[ΠΠ»Π°Π΄ΠΈΠΌΠΈΡ ΠΠ°Π»ΡΠ½] [balun.courses] ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΠΌ (2023)
[ΠΠ»Π°Π΄ΠΈΠΌΠΈΡ ΠΠ°Π»ΡΠ½] [balun.courses] ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΊΠ° ΠΊ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΈΠΌ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΠΌ (2023)
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π·Π° 8 Π½Π΅Π΄Π΅Π»Ρ ΠΈ ΡΠ²Π΅Π»ΠΈΡΡ ΡΠ²ΠΎΠΈ ΡΠ°Π½ΡΡ Π½Π° ΡΡΡΠ΄ΠΎΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π² BigTech-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π² 2 ΡΠ°Π·Π°.
ΠΠ΅Π· Π·ΡΠ±ΡΡΠΆΠΊΠΈ Π½Π°ΡΡΠΈΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΡΡΡΡ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ, ΠΏΠΎΡΡΠ΅Π½ΠΈΡΡΠ΅ΡΡΡΡ Π½Π° mock-ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ ΠΈ ΡΠ°Π·Π±Π΅ΡΠ΅ΡΡ Π·Π°Π΄Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π»ΠΈΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² OZON, Tinkoff, ΠΠ, Π‘ΠΠΠ , ΠΠ²ΠΈΡΠΎ ΠΈ Π―Π½Π΄Π΅ΠΊΡ.
ΠΡΠΎΡ ΠΊΡΡΡ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ Π΄Π»Ρ Juniir ΠΈ Middle-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²:
Π§ΡΠΎΠ±Ρ Π²ΡΠΆΠ°ΡΡ ΠΈΠ· ΠΊΡΡΡΠ° ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ, ΡΠ΅Π±Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ ΠΎΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π‘Π°ΠΌ ΠΊΡΡΡ Π±ΡΠ΄Π΅Ρ Π½Π° Python, Π½ΠΎ ΡΠ΅Π±Π΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π·Π½Π°ΡΡ ΡΠ²ΠΎΠΉ ΡΠ·ΡΠΊ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΡ. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ½ΡΡΠ΅Π½ Π²ΡΠ΅ΠΌ.
ΠΠ½Π°ΠΊΠΎΠΌΠ°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ:
1. ΠΠ΅ ΠΌΠΎΠ³Ρ ΡΡΡΡΠΎΠΈΡΡΡΡ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΌΠ΅ΡΡΡ, ΡΠΏΠΎΡΡΠΊΠ°ΡΡΡ ΠΎΠ± Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅
2. ΠΠ°ΡΠ΅ΡΠΈΠ²Π°Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΠΈΡ ΡΡΡΠΈ. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² Π³ΠΎΠ»ΠΎΠ²Π΅ Π½Π΅ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π°
3. ΠΠ°ΡΡ ΡΠ°Π· ΡΠΆΠ΅ Π·Π°Π²Π°Π»ΠΈΠ»ΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ , ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π½Π΅ ΠΌΠΎΠ³ ΡΠ΅ΡΠΈΡΡ
4. ΠΠ΅ Π·Π½Π°Ρ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ΅Π±Ρ Π²Π΅ΡΡΠΈ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π·Π³ΠΎΠ²Π°ΡΠΈΠ²Π°ΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΠ²ΡΡΠ΅ΡΠΎΠΌ
5. ΠΠ½Π°Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ, Π½ΠΎ ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π΅Π»ΠΎ Π΄ΠΎΡ ΠΎΠ΄ΠΈΡ Π΄ΠΎ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ β Π½Π΅ ΠΌΠΎΠ³Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ
6. ΠΠ΅ Π·Π½Π°Ρ, ΡΡΠΎ ΠΌΠ΅Π½Ρ ΠΆΠ΄Π΅Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΠΊ ΡΠ΅ΠΌΡ Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π½Π΅ ΠΏΡΠΎΠ²Π°Π»ΠΈΡΡ
ΠΡΠΎΡ ΠΊΡΡΡ ΠΏΠΎΠ²ΡΡΠΈΡ ΡΠ²ΠΎΠΈ ΡΠ°Π½ΡΡ Π½Π° ΡΡΡΠ΄ΠΎΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π² BigTech ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π² 2 ΡΠ°Π·Π°:
1. ΠΠ·ΡΡΠΈΡΡ ΡΠ΅ΠΎΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π΄Π»Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ
2. ΠΠ°ΡΡΠΈΡΡΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΡΡΡ ΠΈ ΠΈΠ΄Π΅Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π±Π΅Π· Π·Π°ΡΡΠΈΠ²Π°Π½ΠΈΡ ΡΡ Π΅ΠΌΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ
3. ΠΡΠΎΡΠ΅ΡΠ°Π΅ΡΡ Π²ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΡΡΠ΅ΡΠΈΡΡΡΡ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ: ΠΏΡΠΎΡΡΡΠ΅ ΠΈ ΡΡΠΎΠ²Π½Ρ hard+
4. Π£Π·Π½Π°Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π²Π΅ΡΡΠΈ ΡΠ΅Π±Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΠ²ΡΡΠ΅ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΎΠ²Π°Π»ΠΈΡΡΡΡ
5. Π Π°Π·Π±Π΅ΡΠ΅ΡΡ Π·Π°Π΄Π°ΡΠΈ ΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π»ΠΈΡΡ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² OZON, Π―Π½Π΄Π΅ΠΊΡ, ΠΠ, Π’ΠΈΠ½ΡΠΊΠΎΡΡ, Π‘ΠΠΠ ΠΈ ΠΠ²ΠΈΡΠΎ + ΡΠ·Π½Π°Π΅ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ Π² ΡΡΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ
6. ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΈ ΠΏΠΎΠΉΠΌΠ΅ΡΡ, ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΡΠ΅Π±Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΡΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ΅ΡΠΈΡΡ
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅:
Π£ΡΠΎΠΊ 1.
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°
ΠΠΎΠ΄Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΡΡΠΌΠΌΡ, xor ΠΈ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°
ΠΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΌΠ°ΡΡΠΈΠ²Ρ
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΌΠ°ΡΡΠΈΠ²Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² Π‘Π±Π΅ΡΠΌΠ°ΡΠΊΠ΅Ρ, Π‘ΠΠΠ , ΠΠ·ΠΎΠ½ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΈ ΡΠ΅ΡΠ°ΡΡ ΠΈΡ
Π£ΠΌΠ΅Π΅ΡΡ Π΄Π°Π²Π°ΡΡ ΠΎΡΠ΅Π½ΠΊΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠ°Π·ΠΎΠ±ΡΠ°Π½Π½ΡΡ Π·Π°Π΄Π°Ρ
Π£ΡΠΎΠΊ 2.
2 ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎΠ΄ΡΡΠ΅ΡΠΎΠΌ (count sort)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ΅ΠΌΡ Π² Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π°Π΄Π°Ρ ΠΈΠ· Π‘Π±Π΅ΡΠΠ°ΡΠΊΠ΅ΡΠ°, ΠΠ·ΠΎΠ½Π°, Π―Π½Π΄Π΅ΠΊΡΠ° ΠΈ ΠΠ·Π΅Π½Π°
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΠΈ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° count sort Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π°Π΄Π°Ρ ΠΈΠ· ΠΠ²ΠΈΡΠΎ
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ:
ΠΠ° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΠ²ΠΈΡΠΎ Π½Π°ΡΡΠΈΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡ Β«ΠΊΠΎΠ³Π΄Π° ΡΡΠΎΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ count sort?Β»
Π£ΡΠΎΠΊ 3.
Π‘ΠΊΠ°Π½ΠΈΡΡΡΡΠ°Ρ ΠΏΡΡΠΌΠ°Ρ ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°ΠΌΠΈ
ΠΠ»Π°Π²Π°ΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΈ ΡΠ·Π½Π°Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ Π²ΡΡΡΠ΅ΡΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² VK ΠΈ Π―Π½Π΄Π΅ΠΊΡ
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΠΏΠ°ΡΡΠ΅ΡΠ½ Β«ΠΏΠ»Π°Π²Π°ΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎΒ» Π² Π·Π°Π΄Π°ΡΠ°Ρ , ΠΈ Π·Π°ΠΊΡΠ΅ΠΏΠΈΡΡ ΡΠ²ΠΎΠΈ Π·Π½Π°Π½ΠΈΡ Π½Π° Π·Π°Π΄Π°ΡΠ°Ρ ΠΈΠ· Π―Π½Π΄Π΅ΠΊΡΠ°
Π£ΡΠΎΠΊ 4.
Π‘Π²ΡΠ·Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ
ΠΠ½Π°Π³ΡΠ°ΠΌΠΌΡ, ΠΏΠ°Π½Π°Π³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΈΡΠ»Π°
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ²ΡΠ·Π½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·Ρ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ Β«2 pointersΒ», Β«slow & fast pointersΒ» ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠΊΠΈ, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΠ°Π΅ΡΡΡ 90% Π·Π°Π΄Π°Ρ Π½Π° ΡΠ΅ΠΌΡ Β«ΡΠ²ΡΠ·Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊΒ»
ΠΠ½Π°Π΅ΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΡΠ±ΡΡ Π΄Π°Π²Π°ΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² Π‘Π±Π΅ΡΠΠ΅Π²Π°ΠΉΡΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ΅ΠΌΡ Β«Π°Π½Π°Π³ΡΠ°ΠΌΠΌΡΒ» ΠΈ Β«ΠΏΠ°Π½Π°Π³ΡΠ°ΠΌΠΌΡΒ» Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π°Π΄Π°Ρ ΠΈΠ· Π―Π½Π΄Π΅ΠΊΡΠ°
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ:
ΠΠ°ΡΡΠΈΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅ΡΠΎ ΠΡΠ°ΡΠΎΡΡΠ΅Π½Π° Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΡΠΎΡΡΡΡ ΡΠΈΡΠ΅Π»
Π£Π·Π½Π°Π΅ΡΡ, Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠ΅Π±Π΅ ΠΏΡΠΈΠ³ΠΎΠ΄ΡΡΡΡ Π·Π½Π°Π½ΠΈΡ ΠΎ ΠΏΡΠΎΡΡΡΡ ΡΠΈΡΠ»Π°Ρ
Π£ΡΠΎΠΊ 5.
Π‘ΡΠ΅ΠΊ
ΠΡΡΡΡΠ°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ Π²ΡΠ±ΠΎΡΠ° pivot-Π°
Quick select ΠΈ ΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΡΠ»ΠΈΡΠ½ΠΈΠ΅ΠΌ
ΠΡΠ·ΡΡΡΠΊΠΎΠ²Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ½ΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΎΠΊ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠ΅ΠΊ, ΠΈ Π·Π½Π°Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ Π΄Π°ΡΡ Π½Π° ΡΡΡ ΡΠ΅ΠΌΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ²ΠΈΡΠΎ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Β«quick sortΒ», Β«merge sortΒ» ΠΈ Β«bubble sortΒ»
Π£ΠΌΠ΅Π΅ΡΡ Π²ΡΠ±ΠΈΡΠ°ΡΡ pivot-ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠΉ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠΎΠ½ΠΈΠΌΠ°Π΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ Π²ΡΠ±ΠΎΡΠ°, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π±ΡΡΡΡΠΎΠΉ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π·Π½ΡΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΡ
Π£ΠΌΠ΅Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ quick select Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΏΠ°Π΄ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ²ΠΈΡΠΎ
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ:
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ², ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΏΠ°ΠΌΡΡΡ, ΠΈ ΡΠΌΠΎΠΆΠ΅ΡΡ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π΄Π°ΡΡ ΠΎΡΠ²Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΈΠ· Π‘Π±Π΅ΡΠΠ°ΡΠΊΠ΅ΡΠ°
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΡΡΠΈ ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΠ²ΠΈΡΠΎ β ΡΠ°ΠΌ ΠΎΡΠ΅Π½Ρ Π»ΡΠ±ΡΡ Π΄Π°Π²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
Π£ΡΠΎΠΊ 6.
Π₯Π΅Ρ-ΡΠ°Π±Π»ΠΈΡΠ°
ΠΠ»ΠΈΠ½Π½Π°Ρ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ°
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ Π΅Ρ-ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ, ΠΠ²ΠΈΡΠΎ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
ΠΠ½Π°Π΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ LRU ΠΈ LFU-ΠΊΠ΅ΡΠΈ, Π° ΡΠ°ΠΊ ΠΆΠ΅ Π·Π½Π°Π΅ΡΡ, Π² ΠΊΠ°ΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡ Π΄Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π΄Π»ΠΈΠ½Π½ΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π²ΡΠ³ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΡΠ΅ΡΠ° Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² Π‘Π±Π΅ΡΠΠ΅Π²Π°ΠΉΡΡ
Π£ΡΠΎΠΊ 7.
ΠΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ
ΠΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΠΎΡΠ²Π΅ΡΡ
ΠΡΡΠ°
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π²ΡΠ³Π»ΡΠ΄Π΅Π» ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ Π΄Π»Ρ 95% Π·Π°Π΄Π°Ρ
ΠΠ΅ ΠΏΡΡΠ°Π΅ΡΡΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΠΏΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ°
ΠΠ½Π°Π΅ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΡΡΠ΅ΡΠΈΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΊΡΡΡ ΠΈ Π·Π½Π°Π΅ΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Β«ΠΏΡΠΎΡΠ΅ΠΈΠ²Π°Π½ΠΈΠ΅ Π²Π²Π΅ΡΡ ΠΈ Π²Π½ΠΈΠ·Β», ΠΈ ΠΊΠ°ΠΊ Ρ ΠΈΡ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠΈΡΠ°ΡΡ Β«ΠΊΡΠ°ΡΠΈΠ²ΡΡΒ» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π½Π΅ ΠΏΡΡΠ°ΡΡΡΡ Π² ΠΊΠΎΠ΄Π΅
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΡΡΠΈ ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΠ²ΠΈΡΠΎ β ΡΠ°ΠΌ ΠΎΡΠ΅Π½Ρ Π»ΡΠ±ΡΡ Π΄Π°Π²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
Π£ΡΠΎΠΊ 8.
ΠΠ΅ΡΠ΅Π²ΡΡ
ΠΠΎΠΈΡΠΊ Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠΎΠΌ (Backtracking)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° Π΄Π΅ΡΠ΅Π²ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ backtracking Π΄Π»Ρ Π·Π°Π΄Π°Ρ, ΡΡΠ΅Π±ΡΡΡΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ°. ΠΠ½Π°Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΠΈΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π΄Π»Ρ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
Π Π°Π·Π±Π΅ΡΠ΅ΡΡΡΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ Π½Π° ΡΠ΅ΠΌΡ Β«backtrackingΒ», ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² ΠΠ²ΠΈΡΠΎ ΠΈ ΠΠ·ΠΎΠ½
Π’Π°ΡΠΈΡ Π‘ΡΠ°Π½Π΄Π°ΡΡ.
ΠΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠΌΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π·Π° 8 Π½Π΅Π΄Π΅Π»Ρ ΠΈ ΡΠ²Π΅Π»ΠΈΡΡ ΡΠ²ΠΎΠΈ ΡΠ°Π½ΡΡ Π½Π° ΡΡΡΠ΄ΠΎΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π² BigTech-ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ Π² 2 ΡΠ°Π·Π°.
ΠΠ΅Π· Π·ΡΠ±ΡΡΠΆΠΊΠΈ Π½Π°ΡΡΠΈΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΡΡΡΡ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΠΎΠΌ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ, ΠΏΠΎΡΡΠ΅Π½ΠΈΡΡΠ΅ΡΡΡΡ Π½Π° mock-ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ ΠΈ ΡΠ°Π·Π±Π΅ΡΠ΅ΡΡ Π·Π°Π΄Π°Π½ΠΈΡ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π»ΠΈΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² OZON, Tinkoff, ΠΠ, Π‘ΠΠΠ , ΠΠ²ΠΈΡΠΎ ΠΈ Π―Π½Π΄Π΅ΠΊΡ.
ΠΡΠΎΡ ΠΊΡΡΡ ΠΏΠΎΠ΄ΠΎΠΉΠ΄ΡΡ Π΄Π»Ρ Juniir ΠΈ Middle-ΡΠ°Π·ΡΠ°Π±ΠΎΡΡΠΈΠΊΠΎΠ²:
Π§ΡΠΎΠ±Ρ Π²ΡΠΆΠ°ΡΡ ΠΈΠ· ΠΊΡΡΡΠ° ΠΌΠ°ΠΊΡΠΈΠΌΡΠΌ, ΡΠ΅Π±Π΅ Π½Π΅ΠΎΠ±Ρ ΠΎΠ΄ΠΈΠΌΠΎ Π·Π½Π°ΡΡ ΠΎΡΠ½ΠΎΠ²Ρ ΠΏΡΠΎΠ³ΡΠ°ΠΌΠΌΠΈΡΠΎΠ²Π°Π½ΠΈΡ. Π‘Π°ΠΌ ΠΊΡΡΡ Π±ΡΠ΄Π΅Ρ Π½Π° Python, Π½ΠΎ ΡΠ΅Π±Π΅ Π΄ΠΎΡΡΠ°ΡΠΎΡΠ½ΠΎ Π·Π½Π°ΡΡ ΡΠ²ΠΎΠΉ ΡΠ·ΡΠΊ, Π½Π° ΠΊΠΎΡΠΎΡΠΎΠΌ ΡΡ ΡΠ°Π±ΠΎΡΠ°Π΅ΡΡ. ΠΡ Π±ΡΠ΄Π΅ΠΌ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΠΏΡΠΎΡΡΠΎΠΉ ΡΠΈΠ½ΡΠ°ΠΊΡΠΈΡ, ΠΊΠΎΡΠΎΡΡΠΉ Π±ΡΠ΄Π΅Ρ ΠΏΠΎΠ½ΡΡΠ΅Π½ Π²ΡΠ΅ΠΌ.
ΠΠ½Π°ΠΊΠΎΠΌΠ°Ρ ΡΠΈΡΡΠ°ΡΠΈΡ:
1. ΠΠ΅ ΠΌΠΎΠ³Ρ ΡΡΡΡΠΎΠΈΡΡΡΡ Π² ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡ ΠΌΠ΅ΡΡΡ, ΡΠΏΠΎΡΡΠΊΠ°ΡΡΡ ΠΎΠ± Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ΅ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅
2. ΠΠ°ΡΠ΅ΡΠΈΠ²Π°Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ, Π½ΠΎ Π½Π΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ ΠΈΡ ΡΡΡΠΈ. ΠΠ½ΡΠΎΡΠΌΠ°ΡΠΈΡ Π² Π³ΠΎΠ»ΠΎΠ²Π΅ Π½Π΅ ΡΡΡΡΠΊΡΡΡΠΈΡΠΎΠ²Π°Π½Π°
3. ΠΠ°ΡΡ ΡΠ°Π· ΡΠΆΠ΅ Π·Π°Π²Π°Π»ΠΈΠ»ΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ , ΠΏΠΎΡΠΎΠΌΡ ΡΡΠΎ ΠΏΠΎΠΏΠ°Π΄Π°Π»ΠΈΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Ρ Π½Π΅ ΠΌΠΎΠ³ ΡΠ΅ΡΠΈΡΡ
4. ΠΠ΅ Π·Π½Π°Ρ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ΅Π±Ρ Π²Π΅ΡΡΠΈ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΡΠ°Π·Π³ΠΎΠ²Π°ΡΠΈΠ²Π°ΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΠ²ΡΡΠ΅ΡΠΎΠΌ
5. ΠΠ½Π°Ρ Π°Π»Π³ΠΎΡΠΈΡΠΌΡ, Π½ΠΎ ΠΊΠ°ΠΊ ΡΠΎΠ»ΡΠΊΠΎ Π΄Π΅Π»ΠΎ Π΄ΠΎΡ ΠΎΠ΄ΠΈΡ Π΄ΠΎ ΠΏΡΠ°ΠΊΡΠΈΠΊΠΈ β Π½Π΅ ΠΌΠΎΠ³Ρ Π½ΠΈΡΠ΅Π³ΠΎ ΡΠ΄Π΅Π»Π°ΡΡ
6. ΠΠ΅ Π·Π½Π°Ρ, ΡΡΠΎ ΠΌΠ΅Π½Ρ ΠΆΠ΄Π΅Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ. ΠΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Ρ, ΠΊ ΡΠ΅ΠΌΡ Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΈ ΠΊΠ°ΠΊ Π΅Π³ΠΎ Π½Π΅ ΠΏΡΠΎΠ²Π°Π»ΠΈΡΡ
ΠΡΠΎΡ ΠΊΡΡΡ ΠΏΠΎΠ²ΡΡΠΈΡ ΡΠ²ΠΎΠΈ ΡΠ°Π½ΡΡ Π½Π° ΡΡΡΠ΄ΠΎΡΡΡΡΠΎΠΉΡΡΠ²ΠΎ Π² BigTech ΠΌΠΈΠ½ΠΈΠΌΡΠΌ Π² 2 ΡΠ°Π·Π°:
1. ΠΠ·ΡΡΠΈΡΡ ΡΠ΅ΠΎΡΠΈΡ, ΠΊΠΎΡΠΎΡΠ°Ρ ΡΠΎΡΠ½ΠΎ ΠΏΠΎΠ½Π°Π΄ΠΎΠ±ΠΈΡΡΡ Π΄Π»Ρ ΡΡΠΏΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠ³ΠΎ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ
2. ΠΠ°ΡΡΠΈΡΡΡΡ ΠΏΠΎΠ½ΠΈΠΌΠ°ΡΡ ΡΡΡΡ ΠΈ ΠΈΠ΄Π΅Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ Π·Π°Π΄Π°ΡΠΈ Π±Π΅Π· Π·Π°ΡΡΠΈΠ²Π°Π½ΠΈΡ ΡΡ Π΅ΠΌΡ ΡΠ΅ΡΠ΅Π½ΠΈΡ
3. ΠΡΠΎΡΠ΅ΡΠ°Π΅ΡΡ Π²ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΡΡΠ΅ΡΠΈΡΡΡΡ Π½Π° Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΎΠΌ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ: ΠΏΡΠΎΡΡΡΠ΅ ΠΈ ΡΡΠΎΠ²Π½Ρ hard+
4. Π£Π·Π½Π°Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ Π²Π΅ΡΡΠΈ ΡΠ΅Π±Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ ΠΈ ΠΊΠ°ΠΊ ΠΎΠ±ΡΠ°ΡΡΡΡ Ρ ΠΈΠ½ΡΠ΅ΡΠ²ΡΡΠ΅ΡΠΎΠΌ, ΡΡΠΎΠ±Ρ Π½Π΅ ΠΏΡΠΎΠ²Π°Π»ΠΈΡΡΡΡ
5. Π Π°Π·Π±Π΅ΡΠ΅ΡΡ Π·Π°Π΄Π°ΡΠΈ ΠΈ ΡΠΈΡΡΠ°ΡΠΈΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°Π»ΠΈΡΡ Π½Π° ΡΠ΅Π°Π»ΡΠ½ΡΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² OZON, Π―Π½Π΄Π΅ΠΊΡ, ΠΠ, Π’ΠΈΠ½ΡΠΊΠΎΡΡ, Π‘ΠΠΠ ΠΈ ΠΠ²ΠΈΡΠΎ + ΡΠ·Π½Π°Π΅ΡΡ ΠΎΡΠΎΠ±Π΅Π½Π½ΠΎΡΡΠΈ ΠΏΡΠΎΡ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΉ Π² ΡΡΠΈ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΠΈ ΡΠΈΠΏΠΈΡΠ½ΡΠ΅ ΡΠ΅ΠΌΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΠ½ΠΈ ΡΠΏΡΠ°ΡΠΈΠ²Π°ΡΡ
6. ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ ΡΠ»ΠΎΠΆΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ ΠΈ ΠΏΠΎΠΉΠΌΠ΅ΡΡ, ΡΡΠΎ Π΄Π΅Π»Π°ΡΡ, Π΅ΡΠ»ΠΈ ΡΠ΅Π±Π΅ ΠΏΠΎΠΏΠ°Π΄Π°Π΅ΡΡΡ Π·Π°Π΄Π°Π½ΠΈΠ΅, ΠΊΠΎΡΠΎΡΠΎΠ΅ Π½Π΅ ΠΏΠΎΠ»ΡΡΠ°Π΅ΡΡΡ ΡΠ΅ΡΠΈΡΡ
Π‘ΠΎΠ΄Π΅ΡΠΆΠ°Π½ΠΈΠ΅:
Π£ΡΠΎΠΊ 1.
ΠΠΎΡΡΡΠΎΠ΅Π½ΠΈΠ΅ ΠΎΠ΄Π½ΠΎΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΈ Π΄Π²ΡΠΌΠ΅ΡΠ½ΠΎΠ³ΠΎ ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°
ΠΠΎΠ΄Π·Π°ΠΏΡΠΎΡΡ Π½Π° ΡΡΠΌΠΌΡ, xor ΠΈ ΡΠΌΠ½ΠΎΠΆΠ΅Π½ΠΈΠ΅ Π΄Π»Ρ ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΠΎΠ³ΠΎ ΠΌΠ°ΡΡΠΈΠ²Π°
ΠΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΌΠ°ΡΡΠΈΠ²Ρ
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΌΠ°ΡΡΠΈΠ²Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² Π‘Π±Π΅ΡΠΌΠ°ΡΠΊΠ΅Ρ, Π‘ΠΠΠ , ΠΠ·ΠΎΠ½ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΏΡΠ΅ΡΠΈΠΊΡΠ½ΡΠΉ ΠΌΠ°ΡΡΠΈΠ² ΠΈ ΡΠ΅ΡΠ°ΡΡ ΠΈΡ
Π£ΠΌΠ΅Π΅ΡΡ Π΄Π°Π²Π°ΡΡ ΠΎΡΠ΅Π½ΠΊΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΠΈ ΠΏΠΎ Π²ΡΠ΅ΠΌΠ΅Π½ΠΈ ΠΈ ΠΏΠ°ΠΌΡΡΠΈ Π΄Π»Ρ ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· ΡΠ°Π·ΠΎΠ±ΡΠ°Π½Π½ΡΡ Π·Π°Π΄Π°Ρ
Π£ΡΠΎΠΊ 2.
2 ΡΠΊΠ°Π·Π°ΡΠ΅Π»Ρ
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΏΠΎΠ΄ΡΡΠ΅ΡΠΎΠΌ (count sort)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ°ΠΌΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΡ ΡΠ΅ΠΌΡ Π² Π°Π»Π³ΠΎΡΠΈΡΠΌΠΈΡΠ΅ΡΠΊΠΈΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π°Π΄Π°Ρ ΠΈΠ· Π‘Π±Π΅ΡΠΠ°ΡΠΊΠ΅ΡΠ°, ΠΠ·ΠΎΠ½Π°, Π―Π½Π΄Π΅ΠΊΡΠ° ΠΈ ΠΠ·Π΅Π½Π°
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΠΈ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° count sort Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π°Π΄Π°Ρ ΠΈΠ· ΠΠ²ΠΈΡΠΎ
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ:
ΠΠ° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ ΡΠ΅Π°Π»ΡΠ½ΠΎΠ³ΠΎ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΠ²ΠΈΡΠΎ Π½Π°ΡΡΠΈΡΡΡΡ ΠΏΡΠ°Π²ΠΈΠ»ΡΠ½ΠΎ ΠΎΡΠ²Π΅ΡΠ°ΡΡ Π½Π° Π²ΠΎΠΏΡΠΎΡ Β«ΠΊΠΎΠ³Π΄Π° ΡΡΠΎΠΈΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ count sort?Β»
Π£ΡΠΎΠΊ 3.
Π‘ΠΊΠ°Π½ΠΈΡΡΡΡΠ°Ρ ΠΏΡΡΠΌΠ°Ρ ΠΈ ΡΠ°Π±ΠΎΡΠ° Ρ ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Π°ΠΌΠΈ
ΠΠ»Π°Π²Π°ΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎ
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ ΠΏΠΎΠΏΡΠ»ΡΡΠ½ΡΠ΅ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΈΠ½ΡΠ΅ΡΠ²Π°Π»Ρ ΠΈ ΡΠ·Π½Π°Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ ΠΈΠ· Π½ΠΈΡ Π²ΡΡΡΠ΅ΡΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² VK ΠΈ Π―Π½Π΄Π΅ΠΊΡ
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ°ΡΠΏΠΎΠ·Π½Π°Π²Π°ΡΡ ΠΏΠ°ΡΡΠ΅ΡΠ½ Β«ΠΏΠ»Π°Π²Π°ΡΡΠ΅Π΅ ΠΎΠΊΠ½ΠΎΒ» Π² Π·Π°Π΄Π°ΡΠ°Ρ , ΠΈ Π·Π°ΠΊΡΠ΅ΠΏΠΈΡΡ ΡΠ²ΠΎΠΈ Π·Π½Π°Π½ΠΈΡ Π½Π° Π·Π°Π΄Π°ΡΠ°Ρ ΠΈΠ· Π―Π½Π΄Π΅ΠΊΡΠ°
Π£ΡΠΎΠΊ 4.
Π‘Π²ΡΠ·Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊ
ΠΠ½Π°Π³ΡΠ°ΠΌΠΌΡ, ΠΏΠ°Π½Π°Π³ΡΠ°ΠΌΠΌΡ ΠΈ ΠΏΡΠΎΡΡΡΠ΅ ΡΠΈΡΠ»Π°
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ²ΡΠ·Π½ΡΠ΅ ΡΠΏΠΈΡΠΊΠΈ, ΠΈΡΠΏΠΎΠ»ΡΠ·Ρ ΠΏΠ°ΡΡΠ΅ΡΠ½Ρ Β«2 pointersΒ», Β«slow & fast pointersΒ» ΠΈ Π΄ΡΡΠ³ΠΈΠ΅ Π±Π°Π·ΠΎΠ²ΡΠ΅ ΠΌΠ΅Ρ Π°Π½ΠΈΠΊΠΈ, Π½Π° ΠΎΡΠ½ΠΎΠ²Π΅ ΠΊΠΎΡΠΎΡΡΡ ΡΠ΅ΡΠ°Π΅ΡΡΡ 90% Π·Π°Π΄Π°Ρ Π½Π° ΡΠ΅ΠΌΡ Β«ΡΠ²ΡΠ·Π½ΡΠΉ ΡΠΏΠΈΡΠΎΠΊΒ»
ΠΠ½Π°Π΅ΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π»ΡΠ±ΡΡ Π΄Π°Π²Π°ΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² Π‘Π±Π΅ΡΠΠ΅Π²Π°ΠΉΡΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΠ΅ΠΌΡ Β«Π°Π½Π°Π³ΡΠ°ΠΌΠΌΡΒ» ΠΈ Β«ΠΏΠ°Π½Π°Π³ΡΠ°ΠΌΠΌΡΒ» Π½Π° ΠΏΡΠΈΠΌΠ΅ΡΠ΅ Π·Π°Π΄Π°Ρ ΠΈΠ· Π―Π½Π΄Π΅ΠΊΡΠ°
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ:
ΠΠ°ΡΡΠΈΡΡΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΡΠ΅ΡΠΎ ΠΡΠ°ΡΠΎΡΡΠ΅Π½Π° Π΄Π»Ρ Π½Π°Ρ ΠΎΠΆΠ΄Π΅Π½ΠΈΡ ΠΏΡΠΎΡΡΡΡ ΡΠΈΡΠ΅Π»
Π£Π·Π½Π°Π΅ΡΡ, Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠ΅ Π² ΠΊΠ°ΠΊΠΈΠ΅ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΠΈ ΡΠ΅Π±Π΅ ΠΏΡΠΈΠ³ΠΎΠ΄ΡΡΡΡ Π·Π½Π°Π½ΠΈΡ ΠΎ ΠΏΡΠΎΡΡΡΡ ΡΠΈΡΠ»Π°Ρ
Π£ΡΠΎΠΊ 5.
Π‘ΡΠ΅ΠΊ
ΠΡΡΡΡΠ°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΠΈ ΡΠΏΠΎΡΠΎΠ±Ρ Π²ΡΠ±ΠΎΡΠ° pivot-Π°
Quick select ΠΈ ΠΊΠΎΠ³Π΄Π° Π΅Π³ΠΎ ΠΏΡΠΈΠΌΠ΅Π½ΡΡΡ
Π‘ΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ° ΡΠ»ΠΈΡΠ½ΠΈΠ΅ΠΌ
ΠΡΠ·ΡΡΡΠΊΠΎΠ²Π°Ρ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠ°
ΠΡΠΈΠΌΠ΅Π½Π΅Π½ΠΈΠ΅ ΠΊΠ²Π°Π΄ΡΠ°ΡΠΈΡΠ½ΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΎΠΊ Π½Π° ΠΏΡΠ°ΠΊΡΠΈΠΊΠ΅
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ ΠΈΡΠΏΠΎΠ»ΡΠ·ΡΡ ΡΡΠ΅ΠΊ, ΠΈ Π·Π½Π°Π΅ΡΡ, ΠΊΠ°ΠΊΠΈΠ΅ Π·Π°Π΄Π°ΡΠΈ Π΄Π°ΡΡ Π½Π° ΡΡΡ ΡΠ΅ΠΌΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ²ΠΈΡΠΎ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ Β«quick sortΒ», Β«merge sortΒ» ΠΈ Β«bubble sortΒ»
Π£ΠΌΠ΅Π΅ΡΡ Π²ΡΠ±ΠΈΡΠ°ΡΡ pivot-ΡΠ»Π΅ΠΌΠ΅Π½Ρ Π΄Π»Ρ Π±ΡΡΡΡΠΎΠΉ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ. ΠΠΎΠ½ΠΈΠΌΠ°Π΅ΡΡ ΡΠ°Π·Π»ΠΈΡΠ½ΡΠ΅ ΡΡΡΠ°ΡΠ΅Π³ΠΈΠΈ Π²ΡΠ±ΠΎΡΠ°, Π° ΡΠ°ΠΊ ΠΆΠ΅ ΠΊΠ°ΠΊ ΠΌΠ΅Π½ΡΠ΅ΡΡΡ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡΡ Π±ΡΡΡΡΠΎΠΉ ΡΠΎΡΡΠΈΡΠΎΠ²ΠΊΠΈ ΠΏΡΠΈ ΡΠ°Π·Π½ΡΡ ΡΡΡΠ°ΡΠ΅Π³ΠΈΡΡ
Π£ΠΌΠ΅Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ quick select Π΄Π»Ρ ΡΠ΅ΡΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΏΠΎΠΏΠ°Π΄ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ²ΠΈΡΠΎ
ΠΠΎΠΏΠΎΠ»Π½ΠΈΡΠ΅Π»ΡΠ½ΠΎ:
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠΎΡΡΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠ°ΡΡΠΈΠ², ΠΊΠΎΡΠΎΡΡΠΉ Π½Π΅ ΠΏΠΎΠΌΠ΅ΡΠ°Π΅ΡΡΡ Π² ΠΏΠ°ΠΌΡΡΡ, ΠΈ ΡΠΌΠΎΠΆΠ΅ΡΡ Π±Π΅Π· ΠΏΡΠΎΠ±Π»Π΅ΠΌ Π΄Π°ΡΡ ΠΎΡΠ²Π΅Ρ Π½Π° Π²ΠΎΠΏΡΠΎΡ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΡΡΡΠ΅ΠΌΡ ΠΈΠ· Π‘Π±Π΅ΡΠΠ°ΡΠΊΠ΅ΡΠ°
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΡΡΠΈ ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΠ²ΠΈΡΠΎ β ΡΠ°ΠΌ ΠΎΡΠ΅Π½Ρ Π»ΡΠ±ΡΡ Π΄Π°Π²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
Π£ΡΠΎΠΊ 6.
Π₯Π΅Ρ-ΡΠ°Π±Π»ΠΈΡΠ°
ΠΠ»ΠΈΠ½Π½Π°Ρ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΠ°
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ Ρ Π΅Ρ-ΡΠ°Π±Π»ΠΈΡΡ ΠΈ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ, ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ, ΠΠ²ΠΈΡΠΎ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
ΠΠ½Π°Π΅ΡΡ, ΠΊΠ°ΠΊ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ LRU ΠΈ LFU-ΠΊΠ΅ΡΠΈ, Π° ΡΠ°ΠΊ ΠΆΠ΅ Π·Π½Π°Π΅ΡΡ, Π² ΠΊΠ°ΠΊΠΈΡ ΠΊΠΎΠΌΠΏΠ°Π½ΠΈΡΡ Π΄Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΠΈΡ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π΄Π»ΠΈΠ½Π½ΡΡ Π°ΡΠΈΡΠΌΠ΅ΡΠΈΠΊΡ Π΄Π»Ρ ΠΏΠΎΠ»ΡΡΠ΅Π½ΠΈΡ ΠΌΠ°ΠΊΡΠΈΠΌΠ°Π»ΡΠ½ΠΎ Π²ΡΠ³ΠΎΠ΄Π½ΠΎΠ³ΠΎ ΠΎΡΡΠ΅ΡΠ° Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² Π‘Π±Π΅ΡΠΠ΅Π²Π°ΠΉΡΡ
Π£ΡΠΎΠΊ 7.
ΠΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ
ΠΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΠΏΠΎ ΠΎΡΠ²Π΅ΡΡ
ΠΡΡΠ°
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ ΡΠ°ΠΊ, ΡΡΠΎΠ±Ρ Π²ΡΠ³Π»ΡΠ΄Π΅Π» ΠΎΠ΄ΠΈΠ½Π°ΠΊΠΎΠ²ΠΎ Π΄Π»Ρ 95% Π·Π°Π΄Π°Ρ
ΠΠ΅ ΠΏΡΡΠ°Π΅ΡΡΡΡ Π² ΠΈΠ½Π΄Π΅ΠΊΡΠ°Ρ ΠΏΡΠΈ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ Π±ΠΈΠ½Π°ΡΠ½ΠΎΠ³ΠΎ ΠΏΠΎΠΈΡΠΊΠ°
ΠΠ½Π°Π΅ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° Π±ΠΈΠ½Π°ΡΠ½ΡΠΉ ΠΏΠΎΠΈΡΠΊ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΌΠΎΠ³ΡΡ Π²ΡΡΡΠ΅ΡΠΈΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΠΈ Π² ΠΠ ΠΈ Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅Π°Π»ΠΈΠ·ΠΎΠ²ΡΠ²Π°ΡΡ ΠΊΡΡΡ ΠΈ Π·Π½Π°Π΅ΡΡ, ΡΡΠΎ ΡΠ°ΠΊΠΎΠ΅ Β«ΠΏΡΠΎΡΠ΅ΠΈΠ²Π°Π½ΠΈΠ΅ Π²Π²Π΅ΡΡ ΠΈ Π²Π½ΠΈΠ·Β», ΠΈ ΠΊΠ°ΠΊ Ρ ΠΈΡ ΠΏΠΎΠΌΠΎΡΡΡ ΠΏΠΈΡΠ°ΡΡ Β«ΠΊΡΠ°ΡΠΈΠ²ΡΡΒ» ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΡ ΠΈ Π½Π΅ ΠΏΡΡΠ°ΡΡΡΡ Π² ΠΊΠΎΠ΄Π΅
ΠΠ°ΡΡΠΈΡΡΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Ρ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°Π½ΠΈΠ΅ΠΌ ΠΊΡΡΠΈ ΠΈ Ρ ΠΎΡΠΎΡΠΎ ΠΏΠΎΠ΄Π³ΠΎΡΠΎΠ²ΠΈΡΡΡΡ ΠΊ ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡ Π² ΠΠ²ΠΈΡΠΎ β ΡΠ°ΠΌ ΠΎΡΠ΅Π½Ρ Π»ΡΠ±ΡΡ Π΄Π°Π²Π°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° ΡΡΡ ΡΡΡΡΠΊΡΡΡΡ Π΄Π°Π½Π½ΡΡ
Π£ΡΠΎΠΊ 8.
ΠΠ΅ΡΠ΅Π²ΡΡ
ΠΠΎΠΈΡΠΊ Ρ Π²ΠΎΠ·Π²ΡΠ°ΡΠΎΠΌ (Backtracking)
Π Π΅Π·ΡΠ»ΡΡΠ°Ρ:
Π£ΠΌΠ΅Π΅ΡΡ ΡΠ΅ΡΠ°ΡΡ Π·Π°Π΄Π°ΡΠΈ Π½Π° Π΄Π΅ΡΠ΅Π²ΡΡ, ΠΊΠΎΡΠΎΡΡΠ΅ ΠΎΡΠ΅Π½Ρ ΠΏΠΎΠΏΡΠ»ΡΡΠ½Ρ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² Π―Π½Π΄Π΅ΠΊΡ
Π£ΠΌΠ΅Π΅ΡΡ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ backtracking Π΄Π»Ρ Π·Π°Π΄Π°Ρ, ΡΡΠ΅Π±ΡΡΡΠΈΡ ΠΏΠΎΠ»Π½ΠΎΠ³ΠΎ ΠΏΠ΅ΡΠ΅Π±ΠΎΡΠ°. ΠΠ½Π°Π΅ΡΡ, ΠΊΠ°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΏΠΎΠ»ΡΠ·ΠΎΠ²Π°ΡΡ ΡΠ΅ΠΊΡΡΡΠΈΡ ΠΈ ΡΠΈΡΡΠ΅ΠΌΡ ΡΡΠΈΡΠ»Π΅Π½ΠΈΡ Π΄Π»Ρ Π΅Π³ΠΎ ΡΠ΅Π°Π»ΠΈΠ·Π°ΡΠΈΠΈ.
Π Π°Π·Π±Π΅ΡΠ΅ΡΡΡΡ Π² ΡΠ΅ΡΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ Π½Π° ΡΠ΅ΠΌΡ Β«backtrackingΒ», ΠΊΠΎΡΠΎΡΡΠ΅ Π²ΡΡΡΠ΅ΡΠ°ΡΡΡΡ Π½Π° ΡΠΎΠ±Π΅ΡΠ΅Π΄ΠΎΠ²Π°Π½ΠΈΡΡ Π² ΠΠ²ΠΈΡΠΎ ΠΈ ΠΠ·ΠΎΠ½
Π’Π°ΡΠΈΡ Π‘ΡΠ°Π½Π΄Π°ΡΡ.
favorite
0
star
0
