рдХреБрдЫ рджрд┐рди рдкрд╣рд▓реЗ рд╣реБрдЖ рдерд╛
рдпрд╣ рдЙрдирдХреЗ рдкрд╛рда рдХреЗ рд▓реЗрдЦрдХ рджреНрд╡рд╛рд░рд╛ рдХреЛрдВрдЯреВрд░ рд╕реНрдЯреИрдВрдб рдкрд░ рдХрд╛рд░реНрдпреЛрдВ рдХреЗ рд╡рд┐рд╢реНрд▓реЗрд╖рдг рдХреЗ рд╕рд╛рде рдПрдХ рдкреЛрд╕реНрдЯ рд╣реИред рд╣рд╛рдЗрдбреНрд░рд╛ рдкрд░ рдХреМрди рдерд╛ - рдпрд╣ рд╕реБрдЦрдж рдЕрдиреБрднрд╡ рдХреЛ рдпрд╛рдж рдХрд░рдиреЗ рдХрд╛ рдЖрдкрдХрд╛ рдХрд╛рд░рдг рд╣реИ, рдХреМрди рдирд╣реАрдВ рдерд╛ - рдЕрдкрдиреЗ рджрд┐рдорд╛рдЧ рдХреЛ рдлреИрд▓рд╛рдиреЗ рдХрд╛ рдореМрдХрд╛ рдмрдбрд╝рд╛ рд╣реЗ-рдиреЛрдЯреЗрд╢рди.
рдРрд╕реЗ рдкреНрд░рддрд┐рднрд╛рдЧреА рднреА рдереЗ рдЬрд┐рдиреНрд╣реЛрдВрдиреЗ рдЕрдкрдирд╛ рдирд┐рд░реНрдгрдп рд▓рд┐рдЦрдиреЗ рдХреЗ рд▓рд┐рдП рдлреНрд▓рд┐рдкрдЪрд╛рд░реНрдЯ рдХреЛ рд╕реНрд▓рд╛рдЗрдбреЛрдВ рдореЗрдВ рддреЛрдбрд╝ рджрд┐рдпрд╛ред рдореИрдВ рдордЬрд╛рдХ рдирд╣реАрдВ рдХрд░ рд░рд╣рд╛ рд╣реВрдВ - рдЙрдиреНрд╣реЛрдВрдиреЗ рд╕рддреНрдпрд╛рдкрди рдХреЗ рд▓рд┐рдП рдХрд╛рдЧрдЬ рдХрд╛ рдпрд╣ рдвреЗрд░ рд╕реМрдВрдк рджрд┐рдпрд╛:
рдХреБрд▓ рддреАрди рдХрд╛рд░реНрдп рдереЗ:
- рднрд╛рд░ рд╕рдВрддреБрд▓рди рдХреЗ рд▓рд┐рдП рд╡рдЬрди рдХреЗ рдЖрдзрд╛рд░ рдкрд░ рдкреНрд░рддрд┐рдХреГрддрд┐рдпрд╛рдВ рдЪреБрдирдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
- рдЗрди-рдореЗрдореЛрд░реА рдбреЗрдЯрд╛рдмреЗрд╕ рдХреЗ рд╡рд┐рд░реБрджреНрдз рдХреНрд╡реЗрд░реА рдкрд░рд┐рдгрд╛рдореЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░рдиреЗ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ
- рд░рд┐рдВрдЧ рдЯреЛрдкреЛрд▓реЙрдЬреА рдХреЗ рд╕рд╛рде рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓реА рдореЗрдВ рд░рд╛рдЬреНрдп рд╕реНрдерд╛рдирд╛рдВрддрд░рдг рдкрд░
рдХрд╛рд░реНрдп 1. рдХреНрд▓рд╕реНрдЯрд░рдХреНрд▓рд╛рдЗрдВрдЯ
рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓реА рдХреЗ рдПрди рднрд╛рд░рд┐рдд рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рд╕реЗ рдХреЗ рдХреЗ рдХреБрд╢рд▓ рдЪрдпрди рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛:
рдЖрдкрдХреА рдЯреАрдо рдХреЛ рдПрди рдиреЛрдбреНрд╕ рдХреЗ рд╡реНрдпрд╛рдкрдХ рд░реВрдк рд╕реЗ рд╡рд┐рддрд░рд┐рдд рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд▓рд┐рдП рдХреНрд▓рд╛рдЗрдВрдЯ рд▓рд╛рдЗрдмреНрд░реЗрд░реА рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдиреЛрдбреНрд╕ рд╕реЗ рдЬреБрдбрд╝реЗ рд╡рд┐рднрд┐рдиреНрди рдореЗрдЯрд╛рдбреЗрдЯрд╛ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП, рдЙрдирдХреА рд╡рд┐рд▓рдВрдмрддрд╛, 4xx/5xx рдкреНрд░рддрд┐рдХреНрд░рд┐рдпрд╛ рджрд░, рдЖрджрд┐) рдХрд╛ рдЯреНрд░реИрдХ рд░рдЦреЗрдЧреА рдФрд░ рдЙрдиреНрд╣реЗрдВ рдлрд╝реНрд▓реЛрдЯрд┐рдВрдЧ рдкреЙрдЗрдВрдЯ рд╡реЗрдЯ W1..WN рдЕрд╕рд╛рдЗрди рдХрд░реЗрдЧреАред рд╕рдорд╡рд░реНрддреА рдирд┐рд╖реНрдкрд╛рджрди рд░рдгрдиреАрддрд┐ рдХрд╛ рд╕рдорд░реНрдерди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд▓рд╛рдЗрдмреНрд░реЗрд░реА рдХреЛ N рдиреЛрдбреНрд╕ рдореЗрдВ рд╕реЗ K рдХреЛ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд░реВрдк рд╕реЗ рдЪреБрдирдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реЛрдирд╛ рдЪрд╛рд╣рд┐рдП - рдЪрдпрдирд┐рдд рд╣реЛрдиреЗ рдХреА рд╕рдВрднрд╛рд╡рдирд╛ рдиреЛрдб рдХреЗ рд╡рдЬрди рдХреЗ рдЕрдиреБрдкрд╛рдд рдореЗрдВ рд╣реЛрдиреА рдЪрд╛рд╣рд┐рдПред
рдиреЛрдбреНрд╕ рдХреЛ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдЪреБрдирдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░реЗрдВред рдмрдбрд╝реЗ O рдиреЛрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХреА рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдПрдВред
рд╕рдм рдХреБрдЫ рдЕрдВрдЧреНрд░реЗрдЬреА рдореЗрдВ рдХреНрдпреЛрдВ рд╣реИ?
рдХреНрдпреЛрдВрдХрд┐ рдЗрд╕ рд░реВрдк рдореЗрдВ рд╕рдореНрдореЗрд▓рди рдХреЗ рдкреНрд░рддрд┐рднрд╛рдЧрд┐рдпреЛрдВ рдиреЗ рдЙрдирд╕реЗ рд▓рдбрд╝рд╛рдИ рдХреА рдФрд░ рдХреНрдпреЛрдВрдХрд┐ рдЕрдВрдЧреНрд░реЗрдЬреА рд╣рд╛рдЗрдбреНрд░рд╛ рдХреА рдЖрдзрд┐рдХрд╛рд░рд┐рдХ рднрд╛рд╖рд╛ рдереАред рдХрд╛рд░реНрдп рдЗрд╕ рдкреНрд░рдХрд╛рд░ рджрд┐рдЦреЗ:
рдХрд╛рдЧрдЬ рдФрд░ рдкреЗрдВрд╕рд┐рд▓ рд▓реЗрдВ, рд╕реЛрдЪреЗрдВ, рддреБрд░рдВрдд рд╕реНрдкреЙрдЗрд▓рд░ рдЦреЛрд▓рдиреЗ рдореЗрдВ рдЬрд▓реНрджрдмрд╛рдЬреА рди рдХрд░реЗрдВ ЁЯЩВ
рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рд╡реАрдбрд┐рдпреЛ)
5:53 рд╕реЗ рд╢реБрд░реВ, рдХреЗрд╡рд▓ 4 рдорд┐рдирдЯ:
рдФрд░ рдпрд╣рд╛рдВ рдмрддрд╛рдпрд╛ рдЧрдпрд╛ рд╣реИ рдХрд┐ рдлреНрд▓рд┐рдкрдЪрд╛рд░реНрдЯ рд╡рд╛рд▓реЗ рд▓реЛрдЧреЛрдВ рдиреЗ рдЕрдкрдирд╛ рд╕рдорд╛рдзрд╛рди рдХреИрд╕реЗ рдкреЗрд╢ рдХрд┐рдпрд╛:
рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рдкрд╛рда)
рдирд┐рдореНрдирд▓рд┐рдЦрд┐рдд рд╕рдорд╛рдзрд╛рди рд╕рддрд╣ рдкрд░ рд╣реИ: рд╕рднреА рдкреНрд░рддрд┐рдХреГрддрд┐рдпреЛрдВ рдХреЗ рд╡рдЬрди рдХрд╛ рдпреЛрдЧ рдХрд░реЗрдВ, рд╕рднреА рд╡рдЬрдиреЛрдВ рдХреЗ рдпреЛрдЧ рдХреЗ рд▓рд┐рдП 0 рд╕реЗ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рдЙрддреНрдкрдиреНрди рдХрд░реЗрдВ, рдлрд┐рд░ рдПрдХ рдЖрдИ-рдкреНрд░рддрд┐рдХреГрддрд┐ рдЪреБрдиреЗрдВ рдЬреИрд╕реЗ рдХрд┐ рдкреНрд░рддрд┐рдХреГрддрд┐ рд╡рдЬрди рдХрд╛ рдпреЛрдЧ 0 рд╕реЗ (i-1) рд╡реЗрдВ рддрдХ рд╣реЛ рдПрдХ рдпрд╛рджреГрдЪреНрдЫрд┐рдХ рд╕рдВрдЦреНрдпрд╛ рд╕реЗ рдХрдо рд╣реИ, рдФрд░ 0 рд╕реЗ i-рд╡реЗрдВ рддрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рднрд╛рд░ рдХрд╛ рдпреЛрдЧ - рдЗрд╕рд╕реЗ рдЕрдзрд┐рдХ рд╣реИред рдЗрд╕рд▓рд┐рдП рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╕рдВрднрд╡ рд╣реЛрдЧрд╛, рдФрд░ рдЕрдЧрд▓реЗ рдХрд╛ рдЪрдпрди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдЖрдкрдХреЛ рдЪрдпрдирд┐рдд рдкреНрд░рддрд┐рдХреГрддрд┐ рдкрд░ рд╡рд┐рдЪрд╛рд░ рдХрд┐рдП рдмрд┐рдирд╛ рдкреВрд░реА рдкреНрд░рдХреНрд░рд┐рдпрд╛ рдХреЛ рджреЛрд╣рд░рд╛рдирд╛ рд╣реЛрдЧрд╛ред рдРрд╕реЗ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХреЗ рд╕рд╛рде, рдПрдХ рдкреНрд░рддрд┐рдХреГрддрд┐ рдЪреБрдирдиреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛ O(N) рд╣реИ, K рдкреНрд░рддрд┐рдХреГрддрд┐рдпрд╛рдВ рдЪреБрдирдиреЗ рдХреА рдЬрдЯрд┐рд▓рддрд╛ O(N K) ~ O(N2) рд╣реИред
рджреНрд╡рд┐рдШрд╛рдд рдЬрдЯрд┐рд▓рддрд╛ рдЦрд╝рд░рд╛рдм рд╣реИ, рд▓реЗрдХрд┐рди рдЗрд╕рдореЗрдВ рд╕реБрдзрд╛рд░ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рд╣рдо рдирд┐рд░реНрдорд╛рдг рдХрд░реЗрдВрдЧреЗ
рд░реИрдЦрд┐рдХ-рд▓реЙрдЧ рдЬрдЯрд┐рд▓рддрд╛ рджреНрд╡рд┐рдШрд╛рдд рдЬрдЯрд┐рд▓рддрд╛ рд╕реЗ рдмреЗрд╣рддрд░ рд╣реИ, рд╡рд┐рд╢реЗрд╖ рд░реВрдк рд╕реЗ рдмрдбрд╝реЗ K рдХреЗ рд▓рд┐рдПред
рдпрд╣ рдпрд╣ рдПрд▓реНрдЧреЛрд░рд┐рдердо рд╣реИ
рдХрд╛рд░реНрдп 2. рдЬрд╝реЗрдмрд░рд╛
рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ рдЧреИрд░-рдЕрдиреБрдХреНрд░рдорд┐рдд рдлрд╝реАрд▓реНрдб рджреНрд╡рд╛рд░рд╛ рд╕реНрдореГрддрд┐ рдореЗрдВ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреА рдХреБрд╢рд▓ рд╕реЙрд░реНрдЯрд┐рдВрдЧ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛:
рдЖрдкрдХреА рдЯреАрдо рдХреЛ рдПрдХ рд╕рд╛рдЭрд╛ рдЗрди-рдореЗрдореЛрд░реА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдбреЗрдЯрд╛рдмреЗрд╕ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред рдПрдХ рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдпрднрд╛рд░ рдЖрдХрд╛рд░ M (рдЖрдорддреМрд░ рдкрд░ N <100 << M) рдХреЗ рд╕рдВрдЧреНрд░рд╣ рд╕реЗ рдПрдХ рдордирдорд╛рдиреЗ рдврдВрдЧ рд╕реЗ (рдЧреИрд░-рдЕрдиреБрдХреНрд░рдорд┐рдд) рд╕рдВрдЦреНрдпрд╛рддреНрдордХ рдлрд╝реАрд▓реНрдб рджреНрд╡рд╛рд░рд╛ рдХреНрд░рдордмрджреНрдз рд╢реАрд░реНрд╖ N рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред рд╢реАрд░реНрд╖ рдПрд╕ рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ (рдПрд╕ ~ рдПрди) рдХреЛ рдЫреЛрдбрд╝рдиреЗ рдХреЗ рдмрд╛рдж рд╢реАрд░реНрд╖ рдПрди рдХрд╛ рдЪрдпрди рдХрд░рдирд╛ рдереЛрдбрд╝рд╛ рдХрдо рд╕рд╛рдорд╛рдиреНрдп рдХрд╛рд░реНрдпрднрд╛рд░ рд╣реЛрдЧрд╛ред
рдРрд╕реЗ рдкреНрд░рд╢реНрдиреЛрдВ рдХреЛ рдХреБрд╢рд▓рддрд╛рдкреВрд░реНрд╡рдХ рдирд┐рд╖реНрдкрд╛рджрд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдХрд╛ рдкреНрд░рд╕реНрддрд╛рд╡ рдХрд░реЗрдВред рдФрд╕рдд рдорд╛рдорд▓реЗ рдФрд░ рд╕рдмрд╕реЗ рдЦрд░рд╛рдм рд╕реНрдерд┐рддрд┐ рдореЗрдВ рдмрдбрд╝реЗ O рдиреЛрдЯреЗрд╢рди рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░рдХреЗ рдЗрд╕рдХреА рдХрдореНрдкреНрдпреВрдЯреЗрд╢рдирд▓ рдЬрдЯрд┐рд▓рддрд╛ рдХрд╛ рдЕрдиреБрдорд╛рди рд▓рдЧрд╛рдПрдВред
рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рд╡реАрдбрд┐рдпреЛ)
34:50 рд╕реЗ рд╢реБрд░реВ рд╣реЛрдХрд░, рдХреЗрд╡рд▓ 6 рдорд┐рдирдЯ:
рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рдкрд╛рда)
рд╕рддрд╣реА рд╕рдорд╛рдзрд╛рди: рд╕рднреА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рдХрд░реЗрдВ (рдЙрджрд╛рд╣рд░рдг рдХреЗ рд▓рд┐рдП
рдпрд╣ рд╕реНрдкрд╖реНрдЯ рд╣реИ рдХрд┐ рд╕рднреА рдПрдо рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЛ рдЫрд╛рдВрдЯрдирд╛ рдФрд░ рдлрд┐рд░ рдЙрдирдХрд╛ рдХреЗрд╡рд▓ рдПрдХ рдЫреЛрдЯрд╛ рд╕рд╛ рд╣рд┐рд╕реНрд╕рд╛ рд▓реЗрдирд╛ рдЕрдХреНрд╖рдореНрдп рд╣реИред рд╕рднреА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝реЛрдВ рдХреЛ рдХреНрд░рдордмрджреНрдз рди рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдПрдХ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдЙрдкрдпреБрдХреНрдд рд╣реИ
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдЖрдк рдЗрд╕реЗ рдФрд░ рднреА рдЕрдзрд┐рдХ рдХреБрд╢рд▓рддрд╛ рд╕реЗ рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ - рдПрд▓реНрдЧреЛрд░рд┐рдердо рдХрд╛ рдЙрдкрдпреЛрдЧ рдХрд░реЗрдВ
рд╣рд╛рд▓рд╛рдБрдХрд┐, рд╣реАрдк рд╕реНрдЯреНрд░реАрдорд┐рдВрдЧ рдЗрд╕ рддрдереНрдп рдХреЗ рдХрд╛рд░рдг рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рд╕рд╛рдмрд┐рдд рд╣реЛрддреА рд╣реИ рдХрд┐ рд╡реНрдпрд╡рд╣рд╛рд░ рдореЗрдВ рдЕрдзрд┐рдХрд╛рдВрд╢ рджрд╕реНрддрд╛рд╡реЗрдЬреЛрдВ рдХреЛ рдЙрд╕рдХреЗ рдореВрд▓ рддрддреНрд╡ рдХреЗ рд╕рд╛рде рдПрдХ рддреБрд▓рдирд╛ рдХреЗ рдмрд╛рдж рд╣реАрдк рдХреЗ рдкреБрдирд░реНрдирд┐рд░реНрдорд╛рдг рдХреЗ рдмрд┐рдирд╛ рдЦрд╛рд░рд┐рдЬ рдХрд┐рдпрд╛ рдЬрд╛ рд╕рдХрддрд╛ рд╣реИред рдЗрд╕ рддрд░рд╣ рдХреА рд╕реЙрд░реНрдЯрд┐рдВрдЧ рдХреЛрдВрдЯреВрд░ рдореЗрдВ рд╡рд┐рдХрд╕рд┐рдд рдФрд░ рдЙрдкрдпреЛрдЧ рдХрд┐рдП рдЧрдП рдЬрд╝реЗрдмрд░рд╛ рдЗрди-рдореЗрдореЛрд░реА рджрд╕реНрддрд╛рд╡реЗрдЬрд╝ рдбреЗрдЯрд╛рдмреЗрд╕ рдореЗрдВ рдХрд╛рд░реНрдпрд╛рдиреНрд╡рд┐рдд рдХреА рдЬрд╛рддреА рд╣реИред
рдХрд╛рд░реНрдп 3. рд░рд╛рдЬреНрдп рдХреА рдЕрджрд▓рд╛-рдмрджрд▓реА
рд░рд╛рдЬреНрдпреЛрдВ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП рд╕рдмрд╕реЗ рдХреБрд╢рд▓ рдПрд▓реНрдЧреЛрд░рд┐рджрдо рдкреНрд░рд╕реНрддрд╛рд╡рд┐рдд рдХрд░рдирд╛ рдЖрд╡рд╢реНрдпрдХ рдерд╛:
рдЖрдкрдХреА рдЯреАрдо рдХреЛ рдПрди рдиреЛрдбреНрд╕ рдХреЗ рд╡рд┐рддрд░рд┐рдд рдХреНрд▓рд╕реНрдЯрд░ рдХреЗ рд▓рд┐рдП рдПрдХ рдлреИрдВрд╕реА рд░рд╛рдЬреНрдп рд╡рд┐рдирд┐рдордп рддрдВрддреНрд░ рд╡рд┐рдХрд╕рд┐рдд рдХрд░рдиреЗ рдХрд╛ рдХрд╛рдо рд╕реМрдВрдкрд╛ рдЧрдпрд╛ рд╣реИред i-рд╡реЗрдВ рдиреЛрдб рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ (i+1)-рд╡реЗрдВ рдиреЛрдб рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдП, N-рд╡реЗрдВ рдиреЛрдб рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдкрд╣рд▓реЗ рдиреЛрдб рдореЗрдВ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд┐рдпрд╛ рдЬрд╛рдирд╛ рдЪрд╛рд╣рд┐рдПред рдПрдХрдорд╛рддреНрд░ рд╕рдорд░реНрдерд┐рдд рдСрдкрд░реЗрд╢рди рд░рд╛рдЬреНрдп рд╕реНрд╡реИрдк рд╣реИ рдЬрдм рджреЛ рдиреЛрдбреНрд╕ рдкрд░рдорд╛рдгреБ рд░реВрдк рд╕реЗ рдЕрдкрдиреЗ рд░рд╛рдЬреНрдпреЛрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░рддреЗ рд╣реИрдВред рдпрд╣ рдЬреНрдЮрд╛рдд рд╣реИ рдХрд┐ рдПрдХ рд░рд╛рдЬреНрдп рд╕реНрд╡реИрдк рдореЗрдВ рдПрдо рдорд┐рд▓реАрд╕реЗрдХрдВрдб рд▓рдЧрддреЗ рд╣реИрдВред рдкреНрд░рддреНрдпреЗрдХ рдиреЛрдб рдХрд┐рд╕реА рднреА рд╕рдордп рдПрдХрд▓ рд░рд╛рдЬреНрдп рд╕реНрд╡реИрдк рдореЗрдВ рднрд╛рдЧ рд▓реЗрдиреЗ рдореЗрдВ рд╕рдХреНрд╖рдо рд╣реИред
рдПрдХ рдХреНрд▓рд╕реНрдЯрд░ рдореЗрдВ рд╕рднреА рдиреЛрдбреНрд╕ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рд╕реНрдерд╛рдирд╛рдВрддрд░рд┐рдд рдХрд░рдиреЗ рдореЗрдВ рдХрд┐рддрдирд╛ рд╕рдордп рд▓рдЧрддрд╛ рд╣реИ?
рд╕рдорд╛рдзрд╛рди рдХрд╛ рд╡рд┐рд╢реНрд▓реЗрд╖рдг (рдкрд╛рда)
рд╕рддрд╣реА рд╕рдорд╛рдзрд╛рди: рдкрд╣рд▓реЗ рдФрд░ рджреВрд╕рд░реЗ рддрддреНрд╡ рдХреА рдЕрд╡рд╕реНрдерд╛рдУрдВ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░реЗрдВ, рдлрд┐рд░ рдкрд╣рд▓реЗ рдФрд░ рддреАрд╕рд░реЗ рдХрд╛, рдлрд┐рд░ рдкрд╣рд▓реЗ рдФрд░ рдЪреМрдереЗ рдХрд╛, рдЗрддреНрдпрд╛рджрд┐ред рдкреНрд░рддреНрдпреЗрдХ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХреЗ рдмрд╛рдж, рдПрдХ рддрддреНрд╡ рдХреА рд╕реНрдерд┐рддрд┐ рд╡рд╛рдВрдЫрд┐рдд рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдЧреАред рдЖрдкрдХреЛ O(N) рдХреНрд░рдордкрд░рд┐рд╡рд░реНрддрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ O(N M) рд╕рдордп рд╡реНрдпрддреАрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рд░реИрдЦрд┐рдХ рд╕рдордп рд▓рдВрдмрд╛ рд╣реИ, рдЗрд╕рд▓рд┐рдП рдЖрдк рдЬреЛрдбрд╝реЗ рдореЗрдВ рддрддреНрд╡реЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рдХрд╛ рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХрд░ рд╕рдХрддреЗ рд╣реИрдВ: рдкрд╣рд▓рд╛ рджреВрд╕рд░реЗ рдХреЗ рд╕рд╛рде, рддреАрд╕рд░рд╛ рдЪреМрдереЗ рдХреЗ рд╕рд╛рде, рдФрд░ рдЗрд╕реА рддрд░рд╣ред рдкреНрд░рддреНрдпреЗрдХ рд░рд╛рдЬреНрдп рд╡рд┐рдирд┐рдордп рдХреЗ рдмрд╛рдж, рдкреНрд░рддреНрдпреЗрдХ рджреВрд╕рд░рд╛ рддрддреНрд╡ рд╕рд╣реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдЧрд╛ред рдЖрдкрдХреЛ O(lg N) рдХреНрд░рдордкрд░рд┐рд╡рд░реНрддрди рдХрд░рдирд╛ рд╣реЛрдЧрд╛ рдФрд░ O(M lg N) рд╕рдордп рд╡реНрдпрддреАрдд рдХрд░рдирд╛ рд╣реЛрдЧрд╛ред
рд╣рд╛рд▓рд╛рдБрдХрд┐, рдмрджрд▓рд╛рд╡ рдХреЛ рдФрд░ рднреА рдЕрдзрд┐рдХ рдХреБрд╢рд▓ рдмрдирд╛рдирд╛ рд╕рдВрднрд╡ рд╣реИ - рд░реИрдЦрд┐рдХ рдореЗрдВ рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ рдирд┐рд░рдВрддрд░ рд╕рдордп рдореЗрдВред рдРрд╕рд╛ рдХрд░рдиреЗ рдХреЗ рд▓рд┐рдП, рдкрд╣рд▓реЗ рдЪрд░рдг рдореЗрдВ, рдЖрдкрдХреЛ рдкрд╣рд▓реЗ рддрддреНрд╡ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЕрдВрддрд┐рдо рдХреЗ рд╕рд╛рде, рджреВрд╕рд░реЗ рдХреЛ рдЕрдВрддрд┐рдо рдХреЗ рд╕рд╛рде, рдФрд░ рдЗрд╕реА рддрд░рд╣ рд╕реЗ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред рдЕрдВрддрд┐рдо рддрддреНрд╡ рдХреА рд╕реНрдерд┐рддрд┐ рд╕рд╣реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдЧреА. рдФрд░ рдЕрдм рд╣рдореЗрдВ рджреВрд╕рд░реЗ рддрддреНрд╡ рдХреА рд╕реНрдерд┐рддрд┐ рдХреЛ рдЕрдВрддрд┐рдо рдХреЗ рд╕рд╛рде, рддреАрд╕рд░реЗ рдХреЛ рдЕрдВрддрд┐рдо рдХреЗ рд╕рд╛рде, рдФрд░ рдЗрд╕реА рддрд░рд╣ рд╕реЗ рдмрджрд▓рдирд╛ рд╣реЛрдЧрд╛ред рдЖрджрд╛рди-рдкреНрд░рджрд╛рди рдХреЗ рдЗрд╕ рджреМрд░ рдХреЗ рдмрд╛рдж, рд╕рднреА рддрддреНрд╡реЛрдВ рдХреА рд╕реНрдерд┐рддрд┐ рд╕рд╣реА рд╕реНрдерд┐рддрд┐ рдореЗрдВ рд╣реЛрдЧреАред рдХреБрд▓ рдорд┐рд▓рд╛рдХрд░ O(2M) ~ O(1) рдХреНрд░рдордкрд░рд┐рд╡рд░реНрддрди рд╣реЛрдВрдЧреЗред
рдРрд╕рд╛ рд╕рдорд╛рдзрд╛рди рдХрд┐рд╕реА рдЧрдгрд┐рддрдЬреНрдЮ рдХреЛ рдмрд┐рд▓реНрдХреБрд▓ рднреА рдЖрд╢реНрдЪрд░реНрдпрдЪрдХрд┐рдд рдирд╣реАрдВ рдХрд░реЗрдЧрд╛ рдЬреЛ рдЕрднреА рднреА рдпрд╛рдж рд░рдЦрддрд╛ рд╣реИ рдХрд┐ рдПрдХ рдШреВрд░реНрдгрди рджреЛ рдЕрдХреНрд╖реАрдп рд╕рдорд░реВрдкрддрд╛рдУрдВ рдХрд╛ рдПрдХ рд╕рдВрдпреЛрдЬрди рд╣реИред рд╡реИрд╕реЗ, рдЗрд╕реЗ рдПрдХ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рдирд╣реАрдВ, рдмрд▓реНрдХрд┐ K <N рдкрджреЛрдВ рджреНрд╡рд╛рд░рд╛ рдмрджрд▓рд╛рд╡ рдХреЗ рд▓рд┐рдП рддреБрдЪреНрдЫ рд░реВрдк рд╕реЗ рд╕рд╛рдорд╛рдиреНрдпреАрдХреГрдд рдХрд┐рдпрд╛ рдЧрдпрд╛ рд╣реИред (рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд▓рд┐рдЦреЗрдВ рдХрд┐ рд╡рд╛рд╕реНрддрд╡ рдореЗрдВ рдХреИрд╕реЗред)
рдХреНрдпрд╛ рдЖрдкрдХреЛ рдкрд╣реЗрд▓рд┐рдпрд╛рдБ рдкрд╕рдВрдж рдЖрдИрдВ? рдХреНрдпрд╛ рдЖрдк рдЕрдиреНрдп рд╕рдорд╛рдзрд╛рди рдЬрд╛рдирддреЗ рд╣реИрдВ? рдЯрд┐рдкреНрдкрдгрд┐рдпреЛрдВ рдореЗрдВ рд╕рд╛рдЭрд╛ рдХрд░реЗрдВ.
рдФрд░ рдЕрдВрдд рдореЗрдВ рдпрд╣рд╛рдВ рдХреБрдЫ рдЙрдкрдпреЛрдЧреА рд▓рд┐рдВрдХ рджрд┐рдП рдЧрдП рд╣реИрдВ:
- рдмрд╛рд░реЗ рдореЗрдВ рдФрд░ рд╕реАрдЦреЛ
рдмреБрдирд┐рдпрд╛рджреА рдврд╛рдВрдЪреЗ рдХрд╛ рд╡рд┐рдХрд╛рд╕ рд╕рдореЛрдЪреНрдЪ рдореЗрдВ - рдЖрдВрддрд░рд┐рдХ рдХреЗ рд░рд┐рдХреЙрд░реНрдб рджреЗрдЦреЗрдВ
рд░рд┐рдкреЛрд░реНрдЯ рдХреЗ рд╕рд╛рде рдлрд╝реНрд▓рд╛рдпрд░ рд╡рд┐рддрд░рд┐рдд рдкреНрд░рдгрд╛рд▓рд┐рдпреЛрдВ рдХреЗ рдмрд╛рд░реЗ рдореЗрдВ - рд╡реАрдбрд┐рдпреЛ рд╡реНрдпрд╛рдЦреНрдпрд╛рди рдХреА рд╢реНрд░реГрдВрдЦрд▓рд╛ рджреЗрдЦреЗрдВ
рдЖрдо рд▓реЛрдЧреЛрдВ рдХреЗ рд▓рд┐рдП рдЕрд╕рд╛рдорд╛рдиреНрдп рдПрд▓реНрдЧреЛрд░рд┐рджрдо ┬╗ - рд╣рдорд╛рд░реА рд╕рджрд╕реНрдпрддрд╛ рд▓реЗрдВ
рдЯреЗрд▓реАрдЧреНрд░рд╛рдо рдореЗрдВ рдЪреИрдирд▓
рд╕реНрд░реЛрдд: www.habr.com