ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π’Π°ΠΆΠ½Π΅ΠΉΡˆΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π²Π°ΠΌ слСдуСт Π·Π½Π°Ρ‚ΡŒ ΠΊ своСму собСсСдованию ΠΏΠΎ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡŽ

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Никлаус Π’ΠΈΡ€Ρ‚, ΡˆΠ²Π΅ΠΉΡ†Π°Ρ€ΡΠΊΠΈΠΉ ΡƒΡ‡Π΅Π½Ρ‹ΠΉ-ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊ, Π² 1976 Π³ΠΎΠ΄Ρƒ написал ΠΊΠ½ΠΈΠ³Ρƒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ «Алгоритмы + Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… = ΠŸΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹Β».

Π§Π΅Ρ€Π΅Π· 40 с лишним Π»Π΅Ρ‚ это тоТдСство остаСтся Π² силС. Π’ΠΎΡ‚ ΠΏΠΎΡ‡Π΅ΠΌΡƒ соискатСли, ΠΆΠ΅Π»Π°ΡŽΡ‰ΠΈΠ΅ ΡΡ‚Π°Ρ‚ΡŒ программистами, Π΄ΠΎΠ»ΠΆΠ½Ρ‹ ΠΏΡ€ΠΎΠ΄Π΅ΠΌΠΎΠ½ΡΡ‚Ρ€ΠΈΡ€ΠΎΠ²Π°Ρ‚ΡŒ, Ρ‡Ρ‚ΠΎ Π·Π½Π°ΡŽΡ‚ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΡƒΠΌΠ΅ΡŽΡ‚ ΠΈΡ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ.

ΠŸΡ€Π°ΠΊΡ‚ΠΈΡ‡Π΅ΡΠΊΠΈ Π²ΠΎ всСх Π·Π°Π΄Π°Ρ‡Π°Ρ… ΠΎΡ‚ ΠΊΠ°Π½Π΄ΠΈΠ΄Π°Ρ‚Π° трСбуСтся Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ΅ ΠΏΠΎΠ½ΠΈΠΌΠ°Π½ΠΈΠ΅ структур Π΄Π°Π½Π½Ρ‹Ρ…. ΠŸΡ€ΠΈ этом Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ Π²Π°ΠΆΠ½ΠΎ, выпускник Π»ΠΈ Π²Ρ‹ (Π·Π°ΠΊΠΎΠ½Ρ‡ΠΈΠ»ΠΈ унивСрситСт ΠΈΠ»ΠΈ курсы программирования), Π»ΠΈΠ±ΠΎ Ρƒ вас Π·Π° ΠΏΠ»Π΅Ρ‡Π°ΠΌΠΈ дСсятки Π»Π΅Ρ‚ ΠΎΠΏΡ‹Ρ‚Π°.

Иногда Π² вопросах Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ прямо упоминаСтся Ρ‚Π° ΠΈΠ»ΠΈ иная структура Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«Π΄Π°Π½ΠΎ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎΒ». Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… случаях Π·Π°Π΄Π°Ρ‡Π° формулируСтся Π±ΠΎΠ»Π΅Π΅ Π·Π°Π²ΡƒΠ°Π»ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«Π½ΡƒΠΆΠ½ΠΎ ΠΎΡ‚ΡΠ»Π΅Π΄ΠΈΡ‚ΡŒ, сколько Ρƒ нас ΠΊΠ½ΠΈΠ³ ΠΎΡ‚ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ Π°Π²Ρ‚ΠΎΡ€Π°Β».

Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ структур Π΄Π°Π½Π½Ρ‹Ρ… β€” Π½Π΅Π·Π°ΠΌΠ΅Π½ΠΈΠΌΠΎΠ΅ Π΄Π΅Π»ΠΎ, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ просто ΡΡ‚Π°Ρ€Π°Π΅Ρ‚Π΅ΡΡŒ ΠΏΡ€ΠΎΡ„Π΅ΡΡΠΈΠΎΠ½Π°Π»ΡŒΠ½ΠΎ ΡΠΎΠ²Π΅Ρ€ΡˆΠ΅Π½ΡΡ‚Π²ΠΎΠ²Π°Ρ‚ΡŒΡΡ Π½Π° Π½Ρ‹Π½Π΅ΡˆΠ½Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Π΅. НачнСм с основ.

ΠŸΠ΅Ρ€Π΅Π²Π΅Π΄Π΅Π½ΠΎ Π² Alconost

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ структура Π΄Π°Π½Π½Ρ‹Ρ…?

Если ΠΊΠΎΡ€ΠΎΡ‚ΠΊΠΎ, структура Π΄Π°Π½Π½Ρ‹Ρ… β€” это ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, информация Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ скомпонована Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€Π½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. Благодаря Ρ‚Π°ΠΊΠΎΠΉ Β«ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠ΅Β», структура Π΄Π°Π½Π½Ρ‹Ρ… Π±ΡƒΠ΄Π΅Ρ‚ эффСктивна Π² ΠΎΠ΄Π½ΠΈΡ… опСрациях ΠΈ нСэффСктивна β€” Π² Π΄Ρ€ΡƒΠ³ΠΈΡ…. Наша Ρ†Π΅Π»ΡŒ β€” Ρ€Π°Π·ΠΎΠ±Ρ€Π°Ρ‚ΡŒΡΡ Π² структурах Π΄Π°Π½Π½Ρ‹Ρ… Ρ‚Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ ΠΌΠΎΠ³Π»ΠΈ Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· Π½ΠΈΡ… Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ…ΠΎΠ΄ΡΡ‰ΡƒΡŽ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ стоящСй ΠΏΠ΅Ρ€Π΅Π΄ Π²Π°ΠΌΠΈ Π·Π°Π΄Π°Ρ‡ΠΈ.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ структуры Π΄Π°Π½Π½Ρ‹Ρ…?

ΠŸΠΎΡΠΊΠΎΠ»ΡŒΠΊΡƒ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для хранСния ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ Π² упорядочСнном Π²ΠΈΠ΄Π΅, Π° Π΄Π°Π½Π½Ρ‹Π΅ β€” самый Π²Π°ΠΆΠ½Ρ‹ΠΉ Ρ„Π΅Π½ΠΎΠΌΠ΅Π½ Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, истинная Ρ†Π΅Π½Π½ΠΎΡΡ‚ΡŒ структур Π΄Π°Π½Π½Ρ‹Ρ… ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½Π°.

НС Π²Π°ΠΆΠ½ΠΎ, ΠΊΠ°ΠΊΡƒΡŽ ΠΈΠΌΠ΅Π½Π½ΠΎ Π·Π°Π΄Π°Ρ‡Ρƒ Π²Ρ‹ Ρ€Π΅ΡˆΠ°Π΅Ρ‚Π΅, Ρ‚Π°ΠΊ ΠΈΠ»ΠΈ ΠΈΠ½Π°Ρ‡Π΅ Π²Π°ΠΌ придСтся ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π΅Π»ΠΎ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ, Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° сотрудника, Π±ΠΈΡ€ΠΆΠ΅Π²Ρ‹Π΅ ΠΊΠΎΡ‚ΠΈΡ€ΠΎΠ²ΠΊΠΈ, список ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ² для ΠΏΠΎΡ…ΠΎΠ΄Π° Π² ΠΌΠ°Π³Π°Π·ΠΈΠ½ ΠΈΠ»ΠΈ ΠΎΠ±Ρ‹Ρ‡Π½Ρ‹ΠΉ Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Ρ‹ΠΉ справочник.

Π’ зависимости ΠΎΡ‚ ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠ³ΠΎ сцСнария, Π΄Π°Π½Π½Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ Π² подходящСм Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π£ нас Π² распоряТСнии β€” ряд структур Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‰ΠΈΡ… нас Ρ‚Π°ΠΊΠΈΠΌΠΈ Ρ€Π°Π·Π»ΠΈΡ‡Π½Ρ‹ΠΌΠΈ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π°ΠΌΠΈ.

НаиболСС распространСнныС структуры Π΄Π°Π½Π½Ρ‹Ρ…

Π‘Π½Π°Ρ‡Π°Π»Π° Π΄Π°Π²Π°ΠΉΡ‚Π΅ пСрСчислим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнныС структуры Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π·Π°Ρ‚Π΅ΠΌ Ρ€Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΠΊΠ°ΠΆΠ΄ΡƒΡŽ ΠΏΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ:

ΠœΠ°ΡΡΠΈΠ²Ρ‹

Массив β€” это ΠΏΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠ°Ρ ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ распространСнная структура Π΄Π°Π½Π½Ρ‹Ρ…. Π”Ρ€ΡƒΠ³ΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, стСки ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ ΠΎΡ‚ массивов.

Π—Π΄Π΅ΡΡŒ ΠΏΠΎΠΊΠ°Π·Π°Π½ простой массив Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 4, содСрТащий элСмСнты (1, 2, 3 ΠΈ 4).
ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡
ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту Π΄Π°Π½Π½Ρ‹Ρ… присваиваСтся ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΠΎΠ΅ индСксом ΠΈ ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰Π΅Π΅ полоТСнию этого элСмСнта Π² массивС. Π’ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π΅ языков программирования элСмСнты Π² массивС Π½ΡƒΠΌΠ΅Ρ€ΡƒΡŽΡ‚ΡΡ с 0.

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ массивы Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ²:

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с массивами

Вопросы ΠΏΠΎ массивам, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях

Π‘Ρ‚Π΅ΠΊΠΈ

ВсСм извСстна знамСнитая опция Β«ΠžΡ‚ΠΌΠ΅Π½Π°Β», прСдусмотрСнная ΠΏΠΎΡ‡Ρ‚ΠΈ Π²ΠΎ всСх прилоТСниях. Π—Π°Π΄ΡƒΠΌΡ‹Π²Π°Π»ΠΈΡΡŒ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ, ΠΊΠ°ΠΊ ΠΎΠ½Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚? Бмысл Ρ‚Π°ΠΊΠΎΠΉ: Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ΅ ΡΠΎΡ…Ρ€Π°Π½ΡΡŽΡ‚ΡΡ ΠΏΡ€Π΅Π΄ΡˆΠ΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠ΅ состояния вашСй Ρ€Π°Π±ΠΎΡ‚Ρ‹ (количСство сохраняСмых состояний ΠΎΠ³Ρ€Π°Π½ΠΈΡ‡Π΅Π½ΠΎ), ΠΏΡ€ΠΈΡ‡Π΅ΠΌ, ΠΎΠ½ΠΈ Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² памяти Π² Ρ‚Π°ΠΊΠΎΠΌ порядкС: послСдний сохранСнный элСмСнт ΠΈΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ. Одними массивами Ρ‚Π°ΠΊΡƒΡŽ Π·Π°Π΄Π°Ρ‡Ρƒ Π½Π΅ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ. ИмСнно здСсь Π½Π°ΠΌ пригодится стСк.

Π‘Ρ‚Π΅ΠΊ ΠΌΠΎΠΆΠ½ΠΎ ΡΡ€Π°Π²Π½ΠΈΡ‚ΡŒ с высокой стопкой ΠΊΠ½ΠΈΠ³. Если Π²Π°ΠΌ Π½ΡƒΠΆΠ½Π° какая-Ρ‚ΠΎ ΠΊΠ½ΠΈΠ³Π°, лСТащая ΠΎΠΊΠΎΠ»ΠΎ Ρ†Π΅Π½Ρ‚Ρ€Π° стопки, Π²Π°ΠΌ сначала придСтся ΡΠ½ΡΡ‚ΡŒ всС ΠΊΠ½ΠΈΠ³ΠΈ, Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ Π²Ρ‹ΡˆΠ΅. ИмСнно Ρ‚Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ LIFO (ПослСдним ΠΏΡ€ΠΈΡˆΠ΅Π» β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π²Ρ‹ΡˆΠ΅Π»).

Π’Π°ΠΊ выглядит стСк, содСрТащий Ρ‚Ρ€ΠΈ элСмСнта Π΄Π°Π½Π½Ρ‹Ρ… (1, 2 ΠΈ 3), Π³Π΄Π΅ 3 находится свСрху β€” поэтому Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ±Ρ€Π°Π½ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ:
ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡
ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со стСком:

Вопросы ΠΎ стСкС, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях

ΠžΡ‡Π΅Ρ€Π΅Π΄ΠΈ

ΠžΡ‡Π΅Ρ€Π΅Π΄ΡŒ, ΠΊΠ°ΠΊ ΠΈ стСк β€” это линСйная структура Π΄Π°Π½Π½Ρ‹Ρ…, элСмСнты Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ хранятся Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠΌ порядкС. ЕдинствСнноС сущСствСнноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ стСком ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒΡŽ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ вмСсто LIFO дСйствуСт ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏ FIFO (ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΡ€ΠΈΡˆΠ΅Π» β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π²Ρ‹ΡˆΠ΅Π»).

Π˜Π΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ рСалистичный ΠΏΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ β€” это ΠΈ Π΅ΡΡ‚ΡŒ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»Π΅ΠΉ Π² Π±ΠΈΠ»Π΅Ρ‚Π½ΡƒΡŽ кассу. Новый ΠΏΠΎΠΊΡƒΠΏΠ°Ρ‚Π΅Π»ΡŒ становится Π² самый хвост ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, Π° Π½Π΅ Π² Π½Π°Ρ‡Π°Π»ΠΎ. Π’ΠΎΡ‚ ΠΆΠ΅, ΠΊΡ‚ΠΎ стоит Π² ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ, ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΡ€ΠΈΠΎΠ±Ρ€Π΅Ρ‚Π΅Ρ‚ Π±ΠΈΠ»Π΅Ρ‚ ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΅Π΅ ΠΏΠΎΠΊΠΈΠ½Π΅Ρ‚.

Π’ΠΎΡ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ с Ρ‡Π΅Ρ‚Ρ‹Ρ€ΡŒΠΌΡ элСмСнтами Π΄Π°Π½Π½Ρ‹Ρ… (1, 2, 3 ΠΈ 4), Π³Π΄Π΅ 1 ΠΈΠ΄Π΅Ρ‚ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΈ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΆΠ΅ ΠΏΠΎΠΊΠΈΠ½Π΅Ρ‚ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ:
ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒΡŽ

Вопросы ΠΎΠ± очСрСдях, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях

Бвязный список

Бвязный список β€” Π΅Ρ‰Π΅ ΠΎΠ΄Π½Π° ваТная линСйная структура Π΄Π°Π½Π½Ρ‹Ρ…, Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°ΡŽΡ‰Π°Ρ массив. Однако, связный список отличаСтся ΠΎΡ‚ массива ΠΏΠΎ Π²Ρ‹Π΄Π΅Π»Π΅Π½ΠΈΡŽ памяти, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структурС ΠΈ ΠΏΠΎ Ρ‚ΠΎΠΌΡƒ, ΠΊΠ°ΠΊ Π² Π½Π΅ΠΌ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡŽΡ‚ΡΡ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ вставки ΠΈ удалСния.

Бвязный список Π½Π°ΠΏΠΎΠΌΠΈΠ½Π°Π΅Ρ‚ Ρ†Π΅ΠΏΠΎΡ‡ΠΊΡƒ ΡƒΠ·Π»ΠΎΠ², Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТится информация: Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π» Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅. Π•ΡΡ‚ΡŒ Π³ΠΎΠ»ΠΎΠ²Π½ΠΎΠΉ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, ΡΠΎΠΎΡ‚Π²Π΅Ρ‚ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΠ΅Ρ€Π²ΠΎΠΌΡƒ элСмСнту Π² связном спискС, ΠΈ, Ссли список пуст, Ρ‚ΠΎ ΠΎΠ½ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ просто Π½Π° null (Π½ΠΈΡ‡Ρ‚ΠΎ).

ΠŸΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ связных списков Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Π΅ систСмы, Ρ…Π΅Ρˆ-Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ ΠΈ списки смСТности.

Π’ΠΎΡ‚ Ρ‚Π°ΠΊ ΠΌΠΎΠΆΠ½ΠΎ наглядно ΠΈΠ·ΠΎΠ±Ρ€Π°Π·ΠΈΡ‚ΡŒ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΡŽΡŽ структуру связного списка:
ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ‚Π°ΠΊΠΈΠ΅ Ρ‚ΠΈΠΏΡ‹ связных списков:

ΠŸΡ€ΠΎΡΡ‚Π΅ΠΉΡˆΠΈΠ΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со связными списками:

Вопросы ΠΎ связных списках, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях:

Π“Ρ€Π°Ρ„Ρ‹

Π“Ρ€Π°Ρ„ β€” это мноТСство ΡƒΠ·Π»ΠΎΠ², соСдинСнных Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π² Π²ΠΈΠ΄Π΅ сСти. Π£Π·Π»Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π²Π΅Ρ€ΡˆΠΈΠ½Π°ΠΌΠΈ. ΠŸΠ°Ρ€Π° (x,y) называСтся Ρ€Π΅Π±Ρ€ΠΎΠΌ, это ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ€ΡˆΠΈΠ½Π° x соСдинСна с Π²Π΅Ρ€ΡˆΠΈΠ½ΠΎΠΉ y. Π Π΅Π±Ρ€ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΠΈΠΌΠ΅Ρ‚ΡŒ вСс/ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ β€” ΠΏΠΎΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ, Ρ…Π°Ρ€Π°ΠΊΡ‚Π΅Ρ€ΠΈΠ·ΡƒΡŽΡ‰ΠΈΠΉ, насколько Π·Π°Ρ‚Ρ€Π°Ρ‚Π΅Π½ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ ΠΎΡ‚ Π²Π΅Ρ€ΡˆΠΈΠ½Ρ‹ x ΠΊ Π²Π΅Ρ€ΡˆΠΈΠ½Π΅ y.
ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Вопросы ΠΎ Π³Ρ€Π°Ρ„Π°Ρ…, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях:

Π”Π΅Ρ€Π΅Π²ΡŒΡ

Π”Π΅Ρ€Π΅Π²ΠΎ β€” это иСрархичСская структура Π΄Π°Π½Π½Ρ‹Ρ…, состоящая ΠΈΠ· Π²Π΅Ρ€ΡˆΠΈΠ½ (ΡƒΠ·Π»ΠΎΠ²) ΠΈ Ρ€Π΅Π±Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΈΡ… ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚. Π”Π΅Ρ€Π΅Π²ΡŒΡ ΠΏΠΎΠ΄ΠΎΠ±Π½Ρ‹ Π³Ρ€Π°Ρ„Π°ΠΌ, ΠΎΠ΄Π½Π°ΠΊΠΎ, ΠΊΠ»ΡŽΡ‡Π΅Π²ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ Π΄Π΅Ρ€Π΅Π²Π° ΠΎΡ‚ Π³Ρ€Π°Ρ„Π° Ρ‚Π°ΠΊΠΎΠ²ΠΎ: Π² Π΄Π΅Ρ€Π΅Π²Π΅ Π½Π΅ Π±Ρ‹Π²Π°Π΅Ρ‚ Ρ†ΠΈΠΊΠ»ΠΎΠ².

Π”Π΅Ρ€Π΅Π²ΡŒΡ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² области искусствСнного ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π° ΠΈ Π² слоТных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ…, выступая Π² качСствС эффСктивного Ρ…Ρ€Π°Π½ΠΈΠ»ΠΈΡ‰Π° ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ ΠΏΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡.

Π’ΠΎΡ‚ схСма простого Π΄Π΅Ρ€Π΅Π²Π° ΠΈ базовая тСрминология, связанная с этой структурой Π΄Π°Π½Π½Ρ‹Ρ…:
ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Π΄Π΅Ρ€Π΅Π²ΡŒΡ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ‚ΠΈΠΏΠΎΠ²:

Вопросы ΠΎ Π΄Π΅Ρ€Π΅Π²ΡŒΡΡ…, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях:

НайдитС высоту Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ³ΠΎ Π΄Π΅Ρ€Π΅Π²Π°
НайдитС k-Π½ΠΎΠ΅ максимальноС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Π΄Π΅Ρ€Π΅Π²Π΅ поиска
НайдитС ΡƒΠ·Π»Ρ‹, располоТСнныС Π½Π° расстоянии β€œk” ΠΎΡ‚ корня
НайдитС ΠΏΡ€Π΅Π΄ΠΊΠΎΠ² Π·Π°Π΄Π°Π½Π½ΠΎΠ³ΠΎ ΡƒΠ·Π»Π° Π² Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠΌ Π΄Π΅Ρ€Π΅Π²Π΅

Π‘ΠΎΡ€, Ρ‚Π°ΠΊΠΆΠ΅ ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΡ‹ΠΉ «прСфиксноС Π΄Π΅Ρ€Π΅Π²ΠΎΒ» β€” это дрСвовидная структура Π΄Π°Π½Π½Ρ‹Ρ…, которая особСнно эффСктивна ΠΏΡ€ΠΈ Ρ€Π΅ΡˆΠ΅Π½ΠΈΠΈ Π·Π°Π΄Π°Ρ‡ Π½Π° строки. Она обСспСчиваСт быстроС ΠΈΠ·Π²Π»Π΅Ρ‡Π΅Π½ΠΈΠ΅ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ Ρ‡Π°Ρ‰Π΅ всСго примСняСтся для поиска слов Π² словарС, Π°Π²Ρ‚ΠΎΠ·Π°Π²Π΅Ρ€ΡˆΠ΅Π½ΠΈΠΉ Π² поисковикС ΠΈ Π΄Π°ΠΆΠ΅ для IP-ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Ρ‚Ρ€ΠΈ слова Β«topΒ» (Π²Π΅Ρ€Ρ…), Β«thusΒ» (ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ), and Β«theirΒ» (ΠΈΡ…) хранятся Π² Π±ΠΎΡ€Ρƒ:
ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π‘Π»ΠΎΠ²Π° Ρ€Π°ΡΠΏΠΎΠ»Π°Π³Π°ΡŽΡ‚ΡΡ Π² Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠΈ свСрху Π²Π½ΠΈΠ·, ΠΈ Π·Π΅Π»Π΅Π½Ρ‹Π΅ ΡƒΠ·Π»Ρ‹ Β«pΒ», Β«sΒ» ΠΈ Β«rΒ» Π·Π°Π²Π΅Ρ€ΡˆΠ°ΡŽΡ‚, соотвСтствСнно, слова Β«topΒ», Β«thusΒ» ΠΈ Β«theirΒ».

Вопросы ΠΎ Π±ΠΎΡ€Π°Ρ…, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях:

Π₯Сш-Ρ‚Π°Π±Π»ΠΈΡ†Π°

Π₯Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это процСсс, примСняСмый для ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ сохранСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° ΠΏΠΎ Π·Π°Ρ€Π°Π½Π΅Π΅ вычислСнному индСксу, ΠΈΠΌΠ΅Π½ΡƒΠ΅ΠΌΠΎΠΌΡƒ Π΅Π³ΠΎ Β«ΠΊΠ»ΡŽΡ‡ΠΎΠΌΒ». Π’Π°ΠΊΠΈΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ хранится Π² Π²ΠΈΠ΄Π΅ Β«ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Β», Π° коллСкция Ρ‚Π°ΠΊΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² называСтся Β«ΡΠ»ΠΎΠ²Π°Ρ€ΡŒΒ». ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ½ΠΎ ΠΈΡΠΊΠ°Ρ‚ΡŒ ΠΏΠΎ Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Ρƒ. Π‘ΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ Ρ€Π°Π·Π½Ρ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, построСнныС ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ, Π½ΠΎ Ρ‡Π°Ρ‰Π΅ всСго ΠΈΠ· Ρ‚Π°ΠΊΠΈΡ… структур примСняСтся Ρ…Π΅Ρˆ-Ρ‚Π°Π±Π»ΠΈΡ†Π°.

Как ΠΏΡ€Π°Π²ΠΈΠ»ΠΎ, Ρ…Π΅Ρˆ-Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΡŽΡ‚ΡΡ ΠΏΡ€ΠΈ ΠΏΠΎΠΌΠΎΡ‰ΠΈ массивов.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ Ρ…Π΅ΡˆΠΈΡ€ΡƒΡŽΡ‰Π΅ΠΉ структуры Π΄Π°Π½Π½Ρ‹Ρ… зависит ΠΎΡ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΡ… Ρ‚Ρ€Π΅Ρ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ²:

Вопросы ΠΎ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ Π½Π° собСсСдованиях:

Π£Π΄Π°Ρ‡ΠΈ ΠΈ интСрСсного обучСния! πŸ™‚

ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ Π²Ρ‹ΠΏΠΎΠ»Π½Π΅Π½ Π² Alconost.

Alconost занимаСтся Π»ΠΎΠΊΠ°Π»ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΈΠ³Ρ€, ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΉ ΠΈ сайтов Π½Π° 68 языков. ΠŸΠ΅Ρ€Π΅Π²ΠΎΠ΄Ρ‡ΠΈΠΊΠΈ-носитСли языка, лингвистичСскоС тСстированиС, облачная ΠΏΠ»Π°Ρ‚Ρ„ΠΎΡ€ΠΌΠ° с API, нСпрСрывная локализация, ΠΌΠ΅Π½Π΅Π΄ΠΆΠ΅Ρ€Ρ‹ ΠΏΡ€ΠΎΠ΅ΠΊΡ‚ΠΎΠ² 24/7, Π»ΡŽΠ±Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ строковых рСсурсов.

ΠœΡ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π΄Π΅Π»Π°Π΅ΠΌ Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½Ρ‹Π΅ ΠΈ ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅ Π²ΠΈΠ΄Π΅ΠΎΡ€ΠΎΠ»ΠΈΠΊΠΈ β€” для сайтов, ΠΏΡ€ΠΎΠ΄Π°ΡŽΡ‰ΠΈΠ΅, ΠΈΠΌΠΈΠ΄ΠΆΠ΅Π²Ρ‹Π΅, Ρ€Π΅ΠΊΠ»Π°ΠΌΠ½Ρ‹Π΅, ΠΎΠ±ΡƒΡ‡Π°ΡŽΡ‰ΠΈΠ΅, Ρ‚ΠΈΠ·Π΅Ρ€Ρ‹, эксплСйнСры, Ρ‚Ρ€Π΅ΠΉΠ»Π΅Ρ€Ρ‹ для Google Play ΠΈ App Store.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

10 Ρ‚ΠΈΠΏΠΎΠ² структур Π΄Π°Π½Π½Ρ‹Ρ…, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π½ΡƒΠΆΠ½ΠΎ Π·Π½Π°Ρ‚ΡŒ + Π²ΠΈΠ΄Π΅ΠΎ ΠΈ упраТнСния

Π•ΠΊΠ°Ρ‚Π΅Ρ€ΠΈΠ½Π° ΠœΠ°Π»Π°Ρ…ΠΎΠ²Π°, Ρ€Π΅Π΄Π°ΠΊΡ‚ΠΎΡ€-фрилансСр, ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½ΠΎ для Π±Π»ΠΎΠ³Π° НСтологии Π°Π΄Π°ΠΏΡ‚ΠΈΡ€ΠΎΠ²Π°Π»Π° ΡΡ‚Π°Ρ‚ΡŒΡŽ Beau Carnes ΠΎΠ± основных Ρ‚ΠΈΠΏΠ°Ρ… структур Π΄Π°Π½Π½Ρ‹Ρ….

Β«ΠŸΠ»ΠΎΡ…ΠΈΠ΅ программисты Π΄ΡƒΠΌΠ°ΡŽΡ‚ ΠΎ ΠΊΠΎΠ΄Π΅. Π₯ΠΎΡ€ΠΎΡˆΠΈΠ΅ программисты Π΄ΡƒΠΌΠ°ΡŽΡ‚ ΠΎ структурах Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ΠΈΡ… взаимосвязях», β€” Линус Π’ΠΎΡ€Π²Π°Π»ΡŒΠ΄Ρ, ΡΠΎΠ·Π΄Π°Ρ‚Π΅Π»ΡŒ Linux.

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ³Ρ€Π°ΡŽΡ‚ Π²Π°ΠΆΠ½ΡƒΡŽ Ρ€ΠΎΠ»ΡŒ Π² процСссС Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ ПО, Π° Π΅Ρ‰Π΅ ΠΏΠΎ Π½ΠΈΠΌ часто Π·Π°Π΄Π°ΡŽΡ‚ вопросы Π½Π° собСсСдованиях для Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠΎΠ². Π₯ΠΎΡ€ΠΎΡˆΠ°Ρ Π½ΠΎΠ²ΠΎΡΡ‚ΡŒ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ ΠΏΠΎ сути ΠΎΠ½ΠΈ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‚ собой всСго лишь ΡΠΏΠ΅Ρ†ΠΈΠ°Π»ΡŒΠ½Ρ‹Π΅ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Ρ‹ для ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠΈ ΠΈ хранСния Π΄Π°Π½Π½Ρ‹Ρ….

Π’ этой ΡΡ‚Π°Ρ‚ΡŒΠ΅ я ΠΏΠΎΠΊΠ°ΠΆΡƒ Π²Π°ΠΌ 10 самых распространСнных структур Π΄Π°Π½Π½Ρ‹Ρ…. Для ΠΊΠ°ΠΆΠ΄ΠΎΠΉ ΠΈΠ· Π½ΠΈΡ… ΠΏΡ€ΠΈΠ²Π΅Π΄Π΅Π½Ρ‹ Π²ΠΈΠ΄Π΅ΠΎ ΠΈ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ ΠΈΡ… Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π½Π° JavaScript. Π§Ρ‚ΠΎΠ±Ρ‹ Π²Ρ‹ смогли ΠΏΠΎΠΏΡ€Π°ΠΊΡ‚ΠΈΠΊΠΎΠ²Π°Ρ‚ΡŒΡΡ, я Ρ‚Π°ΠΊΠΆΠ΅ Π΄ΠΎΠ±Π°Π²ΠΈΠ» нСсколько ΡƒΠΏΡ€Π°ΠΆΠ½Π΅Π½ΠΈΠΉ ΠΈΠ· Π±Π΅Ρ‚Π°-вСрсии Π½ΠΎΠ²ΠΎΠΉ ΡƒΡ‡Π΅Π±Π½ΠΎΠΉ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹ freeCodeCamp.

ΠžΠ±Ρ€Π°Ρ‚ΠΈΡ‚Π΅ Π²Π½ΠΈΠΌΠ°Π½ΠΈΠ΅, Ρ‡Ρ‚ΠΎ Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π²Ρ€Π΅ΠΌΠ΅Π½Π½ΡƒΡŽ ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ Π² Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ «большого О». Π­Ρ‚ΠΎ относится Π½Π΅ ΠΊΠΎ всСм ΠΈΠ· Π½ΠΈΡ…, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΈΠ½ΠΎΠ³Π΄Π° врСмСнная ΡΠ»ΠΎΠΆΠ½ΠΎΡΡ‚ΡŒ зависит ΠΎΡ‚ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ. Если Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ·Π½Π°Ρ‚ΡŒ большС ΠΎ Π½ΠΎΡ‚Π°Ρ†ΠΈΠΈ «большого О», посмотритС это Π²ΠΈΠ΄Π΅ΠΎ ΠΎΡ‚ Briana Marie.

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ я ΠΏΡ€ΠΈΠ²ΠΎΠΆΡƒ ΠΏΡ€ΠΈΠΌΠ΅Ρ€Ρ‹ Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ этих структур Π΄Π°Π½Π½Ρ‹Ρ… Π½Π° JavaScript: ΠΎΠ½ΠΈ Ρ‚Π°ΠΊΠΆΠ΅ пригодятся, Ссли Π²Ρ‹ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚Π΅ Π½ΠΈΠ·ΠΊΠΎΡƒΡ€ΠΎΠ²Π½Π΅Π²Ρ‹ΠΉ язык Π²Ρ€ΠΎΠ΄Π΅ Π‘. Π’ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ высокоуровнСвыС языки, Π²ΠΊΠ»ΡŽΡ‡Π°Ρ JavaScript, ΡƒΠΆΠ΅ встроСны Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²Π° структур Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… ΠΏΠΎΠΉΠ΄Π΅Ρ‚ Ρ€Π΅Ρ‡ΡŒ. Π’Π΅ΠΌ Π½Π΅ ΠΌΠ΅Π½Π΅Π΅, Ρ‚Π°ΠΊΠΈΠ΅ знания станут ΡΠ΅Ρ€ΡŒΠ΅Π·Π½Ρ‹ΠΌ прСимущСством ΠΏΡ€ΠΈ поискС Ρ€Π°Π±ΠΎΡ‚Ρ‹ ΠΈ пригодятся ΠΏΡ€ΠΈ написании Π²Ρ‹ΡΠΎΠΊΠΎΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ ΠΊΠΎΠ΄Π°.

БвязныС списки

Бвязный список β€” ΠΎΠ΄Π½Π° ΠΈΠ· Π±Π°Π·ΠΎΠ²Ρ‹Ρ… структур Π΄Π°Π½Π½Ρ‹Ρ…. Π•Π΅ часто ΡΡ€Π°Π²Π½ΠΈΠ²Π°ΡŽΡ‚ с массивом, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ ΠΌΠ½ΠΎΠ³ΠΈΠ΅ Π΄Ρ€ΡƒΠ³ΠΈΠ΅ структуры ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅Π°Π»ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π»ΠΈΠ±ΠΎ массива, Π»ΠΈΠ±ΠΎ связного списка. Π£ этих Π΄Π²ΡƒΡ… Ρ‚ΠΈΠΏΠΎΠ² Π΅ΡΡ‚ΡŒ прСимущСства ΠΈ нСдостатки.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡
Π’Π°ΠΊ устроСн связный список

Бвязный список состоит ΠΈΠ· Π³Ρ€ΡƒΠΏΠΏΡ‹ ΡƒΠ·Π»ΠΎΠ², ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ вмСстС ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ·Π΅Π» содСрТит Π΄Π²Π΅ Π²Π΅Ρ‰ΠΈ: фактичСскиС Π΄Π°Π½Π½Ρ‹Π΅, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ Π² Π½Π΅ΠΌ хранятся (это ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ Π΄Π°Π½Π½Ρ‹Π΅ любого Ρ‚ΠΈΠΏΠ°) ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ (ΠΈΠ»ΠΈ ссылку) Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π» Π² ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΠΈ. Π’Π°ΠΊΠΆΠ΅ ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‚ двусвязныС списки: Π² Π½ΠΈΡ… Ρƒ ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΡƒΠ·Π»Π° Π΅ΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ΠΈ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ, ΠΈ Π½Π° ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠΉ элСмСнт Π² спискС.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π² связном спискС Π²ΠΊΠ»ΡŽΡ‡Π°ΡŽΡ‚ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅, ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ ΠΈ поиск элСмСнта Π² спискС.

УпраТнСния ΠΎΡ‚ freeCodeCamp

Π‘Ρ‚Π΅ΠΊΠΈ

Π‘Ρ‚Π΅ΠΊ β€” это базовая структура Π΄Π°Π½Π½Ρ‹Ρ…, которая позволяСт Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈΠ»ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Π΅Ρ‘ Π½Π°Ρ‡Π°Π»Π΅. Она ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° стопку ΠΊΠ½ΠΈΠ³: Ссли Π²Ρ‹ Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ Π²Π·Π³Π»ΡΠ½ΡƒΡ‚ΡŒ Π½Π° ΠΊΠ½ΠΈΠ³Ρƒ Π² сСрСдинС стСка, спСрва придСтся ΡƒΠ±Ρ€Π°Ρ‚ΡŒ Π»Π΅ΠΆΠ°Ρ‰ΠΈΠ΅ свСрху.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡
Π’Π°ΠΊ устроСн стСк

Π’ стСках ΠΌΠΎΠΆΠ½ΠΎ Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Ρ‚Ρ€ΠΈ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ элСмСнта (push), ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ элСмСнта (pop) ΠΈ ΠΎΡ‚ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ содСрТимого стСка (pip).

УпраТнСния ΠΎΡ‚ freeCodeCamp

ΠžΡ‡Π΅Ρ€Π΅Π΄ΠΈ

Π­Ρ‚Ρƒ структуру ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²ΠΈΡ‚ΡŒ ΠΊΠ°ΠΊ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Π² ΠΏΡ€ΠΎΠ΄ΡƒΠΊΡ‚ΠΎΠ²ΠΎΠΌ ΠΌΠ°Π³Π°Π·ΠΈΠ½Π΅. ΠŸΠ΅Ρ€Π²Ρ‹ΠΌ ΠΎΠ±ΡΠ»ΡƒΠΆΠΈΠ²Π°ΡŽΡ‚ Ρ‚ΠΎΠ³ΠΎ, ΠΊΡ‚ΠΎ ΠΏΡ€ΠΈΡˆΡ‘Π» Π² самом Π½Π°Ρ‡Π°Π»Π΅ β€” всё ΠΊΠ°ΠΊ Π² ΠΆΠΈΠ·Π½ΠΈ.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡
Π’Π°ΠΊ устроСна ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ

ΠžΡ‡Π΅Ρ€Π΅Π΄ΡŒ устроСна ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ FIFO (First In First Out, Β«ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΡ€ΠΈΡˆΡ‘Π» β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ Π²Ρ‹ΡˆΠ΅Π»Β»). Π­Ρ‚ΠΎ Π·Π½Π°Ρ‡ΠΈΡ‚, Ρ‡Ρ‚ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ элСмСнт ΠΌΠΎΠΆΠ½ΠΎ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ послС Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΈ ΡƒΠ±Ρ€Π°Π½Ρ‹ всС Ρ€Π°Π½Π΅Π΅ Π΄ΠΎΠ±Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ элСмСнты.

ΠžΡ‡Π΅Ρ€Π΅Π΄ΡŒ позволяСт Π²Ρ‹ΠΏΠΎΠ»Π½ΡΡ‚ΡŒ Π΄Π²Π΅ основных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ: Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ элСмСнты Π² ΠΊΠΎΠ½Π΅Ρ† ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ (enqueue) ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт (dequeue).

УпраТнСния ΠΎΡ‚ freeCodeCamp

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²Π°

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡
Π’Π°ΠΊ выглядит мноТСство

ΠœΠ½ΠΎΠΆΠ΅ΡΡ‚Π²ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ значСния Π΄Π°Π½Π½Ρ‹Ρ… Π±Π΅Π· ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ³ΠΎ порядка, Π½Π΅ повторяя ΠΈΡ…. Оно позволяСт Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π΄ΠΎΠ±Π°Π²Π»ΡΡ‚ΡŒ ΠΈ ΡƒΠ΄Π°Π»ΡΡ‚ΡŒ элСмСнты: Π΅ΡΡ‚ΡŒ Π΅Ρ‰Ρ‘ нСсколько Π²Π°ΠΆΠ½Ρ‹Ρ… Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΉ, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ ΠΌΠΎΠΆΠ½ΠΎ ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡ‚ΡŒ ΠΊ Π΄Π²ΡƒΠΌ мноТСствам сразу.

УпраТнСния ΠΎΡ‚ freeCodeCamp

Map β€” это структура, которая Ρ…Ρ€Π°Π½ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΏΠ°Ρ€Π°Ρ… ΠΊΠ»ΡŽΡ‡/Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΊΠ»ΡŽΡ‡ ΡƒΠ½ΠΈΠΊΠ°Π»Π΅Π½. Иногда Π΅Ρ‘ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ассоциативным массивом ΠΈΠ»ΠΈ словарём. Map часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ для быстрого поиска Π΄Π°Π½Π½Ρ‹Ρ…. Она позволяСт Π΄Π΅Π»Π°Ρ‚ΡŒ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠ΅ Π²Π΅Ρ‰ΠΈ:

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…. ΠœΠ°Ρ‚Ρ‡Π°ΡΡ‚ΡŒ. Азы

ВсС Ρ‡Π°Ρ‰Π΅ Π·Π°ΠΌΠ΅Ρ‡Π°ΡŽ, Ρ‡Ρ‚ΠΎ соврСмСнным самоучкам ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅ Ρ…Π²Π°Ρ‚Π°Π΅Ρ‚ матчасти. ВсС Π·Π½Π°ΡŽΡ‚ языки, Π½ΠΎ ΠΌΠ°Π»ΠΎ основы, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠ»ΠΈ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹. НСмного ΠΏΡ€ΠΎ Ρ‚ΠΈΠΏΡ‹ Π΄Π°Π½Π½Ρ‹Ρ….

Π•Ρ‰Π΅ Π² Π΄Π°Π»Π΅ΠΊΠΎΠΌ 1976 ΡˆΠ²Π΅ΠΉΡ†Π°Ρ€ΡΠΊΠΈΠΉ ΡƒΡ‡Π΅Π½Ρ‹ΠΉ Никлаус Π’ΠΈΡ€Ρ‚ написал ΠΊΠ½ΠΈΠ³Ρƒ Алгоритмы + структуры Π΄Π°Π½Π½Ρ‹Ρ… = ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

40+ Π»Π΅Ρ‚ спустя это ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ всС Π΅Ρ‰Π΅ Π²Π΅Ρ€Π½ΠΎ. И Ссли Π²Ρ‹ самоучка ΠΈ Π½Π°Π΄ΠΎΠ»Π³ΠΎ Π² ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ ΠΏΡ€ΠΎΠ±Π΅Π³ΠΈΡ‚Π΅ΡΡŒ ΠΏΠΎ ΡΡ‚Π°Ρ‚ΡŒΠ΅, ΠΌΠΎΠΆΠ½ΠΎ ΠΏΠΎ Π΄ΠΈΠ°Π³ΠΎΠ½Π°Π»ΠΈ. МоТно ΠΊΠΎΠ΄ ΠΊΠΎΡ„Π΅.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π’ ΡΡ‚Π°Ρ‚ΡŒΠ΅ Ρ‚Π°ΠΊ ΠΆΠ΅ Π±ΡƒΠ΄ΡƒΡ‚ вопросы, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π²Ρ‹ ΠΌΠΎΠΆΠ΅Ρ‚Π΅ ΡƒΡΠ»Ρ‹ΡˆΠ°Ρ‚ΡŒ Π½Π° ΠΈΠ½Ρ‚Π΅Ρ€Π²ΡŒΡŽ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ структура Π΄Π°Π½Π½Ρ‹Ρ…?

Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π° Π΄Π°Π½Π½Ρ‹Ρ… β€” это ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ Π΄Π°Π½Π½Ρ‹Π΅ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ ΠΌΠ°ΠΊΠ΅Ρ‚Π΅. Π­Ρ‚ΠΎΡ‚ Β«ΠΌΠ°ΠΊΠ΅Ρ‚Β» позволяСт структурС Π΄Π°Π½Π½Ρ‹Ρ… Π±Ρ‹Ρ‚ΡŒ эффСктивной Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… опСрациях ΠΈ нСэффСктивной Π² Π΄Ρ€ΡƒΠ³ΠΈΡ….

КакиС Π±Ρ‹Π²Π°ΡŽΡ‚?

Π›ΠΈΠ½Π΅ΠΉΠ½Ρ‹Π΅, элСмСнты ΠΎΠ±Ρ€Π°Π·ΡƒΡŽΡ‚ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ ΠΈΠ»ΠΈ Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ список, ΠΎΠ±Ρ…ΠΎΠ΄ ΡƒΠ·Π»ΠΎΠ² Π»ΠΈΠ½Π΅Π΅Π½. ΠŸΡ€ΠΈΠΌΠ΅Ρ€Ρ‹: ΠœΠ°ΡΡΠΈΠ²Ρ‹. Бвязанный список, стСки ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ.

НСлинСйныС, Ссли ΠΎΠ±Ρ…ΠΎΠ΄ ΡƒΠ·Π»ΠΎΠ² Π½Π΅Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ, Π° Π΄Π°Π½Π½Ρ‹Π΅ Π½Π΅ ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹. ΠŸΡ€ΠΈΠΌΠ΅Ρ€: Π³Ρ€Π°Ρ„ ΠΈ Π΄Π΅Ρ€Π΅Π²ΡŒΡ.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ….

ΠœΠ°ΡΡΠΈΠ²Ρ‹

Массив β€” это самая простая ΠΈ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ структура Π΄Π°Π½Π½Ρ‹Ρ…. Π”Ρ€ΡƒΠ³ΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, Ρ‚Π°ΠΊΠΈΠ΅ ΠΊΠ°ΠΊ стСки ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ массивов.

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ простого массива Ρ€Π°Π·ΠΌΠ΅Ρ€Π° 4, содСрТащСго элСмСнты (1, 2, 3 ΠΈ 4).

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ элСмСнту Π΄Π°Π½Π½Ρ‹Ρ… присваиваСтся ΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (индСкс), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ элСмСнта Π² массивС. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ языков ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс массива ΠΊΠ°ΠΊ 0.

Π‘Ρ‹Π²Π°ΡŽΡ‚

ΠžΠ΄Π½ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅, ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π²Ρ‹ΡˆΠ΅.
ΠœΠ½ΠΎΠ³ΠΎΠΌΠ΅Ρ€Π½Ρ‹Π΅, массивы Π²Π½ΡƒΡ‚Ρ€ΠΈ массивов.

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Вопросы

Π‘Ρ‚Π΅ΠΊΠΈ

Π‘Ρ‚Π΅ΠΊ β€” абстрактный Ρ‚ΠΈΠΏ Π΄Π°Π½Π½Ρ‹Ρ…, ΠΏΡ€Π΅Π΄ΡΡ‚Π°Π²Π»ΡΡŽΡ‰ΠΈΠΉ собой список элСмСнтов, ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½Ρ‹Ρ… ΠΏΠΎ ΠΏΡ€ΠΈΠ½Ρ†ΠΈΠΏΡƒ LIFO (Π°Π½Π³Π». last in β€” first out, «послСдним ΠΏΡ€ΠΈΡˆΡ‘Π» β€” ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π²Ρ‹ΡˆΠ΅Π»Β»).

Π­Ρ‚ΠΎ Π½Π΅ массивы. Π­Ρ‚ΠΎ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ. ΠŸΡ€ΠΈΠ΄ΡƒΠΌΠ°Π» Алан Π’ΡŽΡ€ΠΈΠ½Π³.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ΠΎΠΌ стСка ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΊΡƒΡ‡Π° ΠΊΠ½ΠΈΠ³, располоТСнных Π² Π²Π΅Ρ€Ρ‚ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌ порядкС. Для Ρ‚ΠΎΠ³ΠΎ, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ, которая Π³Π΄Π΅-Ρ‚ΠΎ посСрСдинС, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС ΠΊΠ½ΠΈΠ³ΠΈ, Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½Π½Ρ‹Π΅ Π½Π° Π½Π΅ΠΉ. Π’Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ LIFO (Last In First Out). Ѐункция Β«ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒΒ» Π² прилоТСниях Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΏΠΎ LIFO.

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ стСка, Π² Ρ‚Ρ€ΠΈ элСмСнта (1, 2 ΠΈ 3), Π³Π΄Π΅ 3 находится Π½Π°Π²Π΅Ρ€Ρ…Ρƒ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Вопросы

ΠžΡ‡Π΅Ρ€Π΅Π΄ΠΈ

Подобно стСкам, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ β€” Ρ…Ρ€Π°Π½ΠΈΡ‚ элСмСнт ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±Ρ€Π°Π·ΠΎΠΌ. БущСствСнноС ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ стСка – использованиС FIFO (First in First Out) вмСсто LIFO.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ – ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ людСй. ПослСдний занял послСдним ΠΈ Π±ΡƒΠ΄Π΅ΡˆΡŒ, Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ Π΅Π΅ ΠΈ ΠΏΠΎΠΊΠΈΠ½Π΅Ρ‚.

Π˜Π·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, Π² Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ элСмСнта (1, 2, 3 ΠΈ 4), Π³Π΄Π΅ 1 находится Π½Π°Π²Π΅Ρ€Ρ…Ρƒ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Вопросы

Бвязанный список

Бвязанный список – массив Π³Π΄Π΅ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ элСмСнт являСтся ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½Ρ‹ΠΌ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠΌ ΠΈ состоит ΠΈΠ· Π΄Π²ΡƒΡ… элСмСнтов – Π΄Π°Π½Π½Ρ‹Ρ… ΠΈ ссылки Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π».

ΠŸΡ€ΠΈΠ½Ρ†ΠΈΠΏΠΈΠ°Π»ΡŒΠ½Ρ‹ΠΌ прСимущСством ΠΏΠ΅Ρ€Π΅Π΄ массивом являСтся структурная Π³ΠΈΠ±ΠΊΠΎΡΡ‚ΡŒ: порядок элСмСнтов связного списка ΠΌΠΎΠΆΠ΅Ρ‚ Π½Π΅ ΡΠΎΠ²ΠΏΠ°Π΄Π°Ρ‚ΡŒ с порядком располоТСния элСмСнтов Π΄Π°Π½Π½Ρ‹Ρ… Π² памяти ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π°, Π° порядок ΠΎΠ±Ρ…ΠΎΠ΄Π° списка всСгда явно задаётся Π΅Π³ΠΎ Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½ΠΈΠΌΠΈ связями.

Π‘Ρ‹Π²Π°ΡŽΡ‚

ΠžΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ, ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ·Π΅Π» Ρ…Ρ€Π°Π½ΠΈΡ‚ адрСс ΠΈΠ»ΠΈ ссылку Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π» Π² спискС ΠΈ послСдний ΡƒΠ·Π΅Π» ΠΈΠΌΠ΅Π΅Ρ‚ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ адрСс ΠΈΠ»ΠΈ ссылку ΠΊΠ°ΠΊ NULL.

Π”Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ, Π΄Π²Π΅ ссылки, связанныС с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ ΡƒΠ·Π»ΠΎΠΌ, ΠΎΠ΄Π½ΠΈΠΌ ΠΈΠ· ΠΎΠΏΠΎΡ€Π½Ρ‹Ρ… ΠΏΡƒΠ½ΠΊΡ‚ΠΎΠ² Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π» ΠΈ ΠΎΠ΄ΠΈΠ½ ΠΊ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅ΠΌΡƒ ΡƒΠ·Π»Ρƒ.

ΠšΡ€ΡƒΠ³ΠΎΠ²ΠΎΠΉ, всС ΡƒΠ·Π»Ρ‹ ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‚ΡΡ, образуя ΠΊΡ€ΡƒΠ³. Π’ ΠΊΠΎΠ½Ρ†Π΅ Π½Π΅Ρ‚ NULL. ЦикличСский связанный список ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ ΠΎΠ΄Π½ΠΎ-ΠΈΠ»ΠΈ Π΄Π²ΡƒΠΊΡ€Π°Ρ‚Π½Ρ‹ΠΌ цикличСским связанным списком.

Π‘Π°ΠΌΠΎΠ΅ частоС, Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΉ ΠΎΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΉ список. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ – файловая систСма.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ

Вопросы

Π“Ρ€Π°Ρ„Ρ‹

Π“Ρ€Π°Ρ„-это Π½Π°Π±ΠΎΡ€ ΡƒΠ·Π»ΠΎΠ² (Π²Π΅Ρ€ΡˆΠΈΠ½), ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ соСдинСны Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π² Π²ΠΈΠ΄Π΅ сСти Ρ€Π΅Π±Ρ€Π°ΠΌΠΈ (Π΄ΡƒΠ³Π°ΠΌΠΈ).

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π‘Ρ‹Π²Π°ΡŽΡ‚

ΠžΡ€ΠΈΠ΅Π½Ρ‚ΠΈΡ€ΠΎΠ²Π°Π½Π½Ρ‹ΠΉ, Ρ€Π΅Π±Ρ€Π° ΡΠ²Π»ΡΡŽΡ‚ΡΡ Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌΠΈ, Ρ‚.Π΅. сущСствуСт Ρ‚ΠΎΠ»ΡŒΠΊΠΎ ΠΎΠ΄Π½ΠΎ доступноС Π½Π°ΠΏΡ€Π°Π²Π»Π΅Π½ΠΈΠ΅ ΠΌΠ΅ΠΆΠ΄Ρƒ двумя связными Π²Π΅Ρ€ΡˆΠΈΠ½Π°ΠΌΠΈ.
НСориСнтированныС, ΠΊ ΠΊΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΈΠ· Ρ€Π΅Π±Π΅Ρ€ ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡΡƒΡ‰Π΅ΡΡ‚Π²Π»ΡΡ‚ΡŒ ΠΏΠ΅Ρ€Π΅Ρ…ΠΎΠ΄ Π² ΠΎΠ±ΠΎΠΈΡ… направлСниях.
Π‘ΠΌΠ΅ΡˆΠ°Π½Π½Ρ‹Π΅

Π’ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π² Ρ‚Π°ΠΊΠΈΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ… ΠΊΠ°ΠΊ

ΠžΠ±Ρ‰ΠΈΠ΅ Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΡ‹ ΠΎΠ±Ρ…ΠΎΠ΄Π° Π³Ρ€Π°Ρ„Π°

Вопросы

Π”Π΅Ρ€Π΅Π²ΡŒΡ

Π”Π΅Ρ€Π΅Π²ΠΎ-это иСрархичСская структура Π΄Π°Π½Π½Ρ‹Ρ…, состоящая ΠΈΠ· ΡƒΠ·Π»ΠΎΠ² (Π²Π΅Ρ€ΡˆΠΈΠ½) ΠΈ Ρ€Π΅Π±Π΅Ρ€ (Π΄ΡƒΠ³). Π”Π΅Ρ€Π΅Π²ΡŒΡ ΠΏΠΎ сути связанныС Π³Ρ€Π°Ρ„Ρ‹ Π±Π΅Π· Ρ†ΠΈΠΊΠ»ΠΎΠ².

Π”Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½Ρ‹Π΅ структуры Π²Π΅Π·Π΄Π΅ ΠΈ Π²ΡΡŽΠ΄Ρƒ. Π”Π΅Ρ€Π΅Π²ΠΎ скилов Π² ΠΈΠ³Ρ€Π°Ρ… Π·Π½Π°ΡŽΡ‚ всС.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Β«Π‘ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ β€” это иСрархичСская структура Π΄Π°Π½Π½Ρ‹Ρ…, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΉ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΡƒΠ·Π΅Π» ΠΈΠΌΠ΅Π΅Ρ‚ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ (ΠΎΠ½ΠΎ ΠΆΠ΅ являСтся Π² Π΄Π°Π½Π½ΠΎΠΌ случаС ΠΈ ΠΊΠ»ΡŽΡ‡ΠΎΠΌ) ΠΈ ссылки Π½Π° Π»Π΅Π²ΠΎΠ³ΠΎ ΠΈ ΠΏΡ€Π°Π²ΠΎΠ³ΠΎ ΠΏΠΎΡ‚ΠΎΠΌΠΊΠ°. Β» β€” Procs

Π’Ρ€ΠΈ способа ΠΎΠ±Ρ…ΠΎΠ΄Π° Π΄Π΅Ρ€Π΅Π²Π°

Вопросы

Trie ( прСфиксноС Π΄Π΅Ρ€Π΅Π²ΠΎΠ΅ )

Π Π°Π·Π½ΠΎΠ²ΠΈΠ΄Π½ΠΎΡΡ‚ΡŒ Π΄Π΅Ρ€Π΅Π²Π° для строк, быстрый поиск. Π‘Π»ΠΎΠ²Π°Ρ€ΠΈ. Π’9.

Π’ΠΎΡ‚ ΠΊΠ°ΠΊ Ρ‚Π°ΠΊΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ Ρ…Ρ€Π°Π½ΠΈΡ‚ слова Β«topΒ», Β«thusΒ» ΠΈ Β«theirΒ».

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π‘Π»ΠΎΠ²Π° хранятся свСрху Π²Π½ΠΈΠ·, Π·Π΅Π»Π΅Π½Ρ‹Π΅ Ρ†Π²Π΅Ρ‚Π½Ρ‹Π΅ ΡƒΠ·Π»Ρ‹ Β«pΒ», Β«sΒ» ΠΈ Β«rΒ» ΡƒΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ Π½Π° ΠΊΠΎΠ½Π΅Ρ† Β«topΒ», Β«thus Β« ΠΈ Β«theirΒ» соотвСтствСнно.

Вопросы

Π₯эш Ρ‚Π°Π±Π»ΠΈΡ†Ρ‹

Π₯ΡΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ β€” это процСсс, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ хранСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Π° Π² Π·Π°Ρ€Π°Π½Π΅Π΅ рассчитанном ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌ индСксС (ΠΊΠ»ΡŽΡ‡Π΅).

ΠžΠ±ΡŠΠ΅ΠΊΡ‚ хранится Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Ρ‹ Β«ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅Β», Π° коллСкция Ρ‚Π°ΠΊΠΈΡ… элСмСнтов называСтся «словарСм». ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ этого ΠΊΠ»ΡŽΡ‡Π°.

По сути это массив, Π² ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΊΠ»ΡŽΡ‡ прСдставлСн Π² Π²ΠΈΠ΄Π΅ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

Π­Ρ„Ρ„Π΅ΠΊΡ‚ΠΈΠ²Π½ΠΎΡΡ‚ΡŒ Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΡ зависит ΠΎΡ‚

Вопросы

Бписок рСсурсов

ВмСсто Π·Π°ΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ

ΠœΠ°Ρ‚Ρ‡Π°ΡΡ‚ΡŒ Ρ‚Π°ΠΊ ΠΆΠ΅ интСрСсна, ΠΊΠ°ΠΊ ΠΈ сами языки. Π’ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΊΡ‚ΠΎ-Ρ‚ΠΎ ΡƒΠ²ΠΈΠ΄ΠΈΡ‚ Π·Π½Π°ΠΊΠΎΠΌΡ‹Π΅ Π΅ΠΌΡƒ Π±Π°Π·ΠΎΠ²Ρ‹Π΅ структуры ΠΈ заинтСрСсуСтся.

Бпасибо, Ρ‡Ρ‚ΠΎ ΠΏΡ€ΠΎΡ‡Π»ΠΈ. НадСюсь Π½Π΅ зря ΠΏΠΎΡ‚Ρ€Π°Ρ‚ΠΈΠ»ΠΈ врСмя =)

PS: ΠŸΡ€ΠΎΡˆΡƒ ΠΈΠ·Π²ΠΈΠ½ΠΈΡ‚ΡŒ, ΠΊΠ°ΠΊ оказалось, ΠΏΠ΅Ρ€Π΅Π²ΠΎΠ΄ ΡΡ‚Π°Ρ‚ΡŒΠΈ ΡƒΠΆΠ΅ Π±Ρ‹Π» Ρ‚ΡƒΡ‚ ΠΈ ΠΎΡ‡Π΅Π½ΡŒ Π½Π΅Π΄Π°Π²Π½ΠΎ, я проглядСл.
Если интСрСсно, Π²ΠΎΡ‚ ΠΎΠ½Π°, спасибо Hokum, Π±ΡƒΠ΄Ρƒ Π²Π½ΠΈΠΌΠ°Ρ‚Π΅Π»ΡŒΠ½Π΅Π΅.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

8 извСстных структур Π΄Π°Π½Π½Ρ‹Ρ…, ΠΎ ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… спросят Π½Π° собСсСдовании

ΠšΡ€Π°Ρ‚ΠΊΠΎ Ρ€Π°Π·Π±ΠΈΡ€Π°Π΅ΠΌ 8 основных структур Π΄Π°Π½Π½Ρ‹Ρ…, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Π΄ΠΎΠ»ΠΆΠ΅Π½ Ρ€Π°Π·Π±ΠΈΡ€Π°Ρ‚ΡŒΡΡ ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊ. ΠŸΡ€ΠΎΠ²Π΅Ρ€ΡŒΡ‚Π΅ свои тСорСтичСскиС знания.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Никлаус Π’ΠΈΡ€Ρ‚, ΡˆΠ²Π΅ΠΉΡ†Π°Ρ€ΡΠΊΠΈΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊ, написал Π² 1976 Π³ΠΎΠ΄Ρƒ ΠΊΠ½ΠΈΠ³Ρƒ ΠΏΠΎΠ΄ Π½Π°Π·Π²Π°Π½ΠΈΠ΅ΠΌ «Алгоритмы + структуры Π΄Π°Π½Π½Ρ‹Ρ… = ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹Β».

Π‘ΠΎΠ»ΡŒΡˆΠ΅ сорока Π»Π΅Ρ‚ спустя это ΡƒΡ€Π°Π²Π½Π΅Π½ΠΈΠ΅ всС Π΅Ρ‰Π΅ Π²Π΅Ρ€Π½ΠΎ. ΠŸΠΎΡ‡Ρ‚ΠΈ всС Π·Π°Π΄Π°Ρ‡ΠΈ программирования Ρ‚Ρ€Π΅Π±ΡƒΡŽΡ‚ ΠΎΡ‚ Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° Π³Π»ΡƒΠ±ΠΎΠΊΠΎΠ³ΠΎ понимания структур Π΄Π°Π½Π½Ρ‹Ρ…. Вопросы Π½Π° эту Ρ‚Π΅ΠΌΡƒ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ Π²ΡΡ‚Ρ€Π΅Ρ‡Π°ΡŽΡ‚ΡΡ Π½Π° любом IT-собСсСдовании.

Иногда Π² этих вопросах явно упоминаСтся искомая структура, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«Π΄Π°Π½ΠΎ Π΄Π²ΠΎΠΈΡ‡Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎΒ». Π’ Π΄Ρ€ΡƒΠ³ΠΈΡ… случаях это Π½Π΅ ΡΡ‚ΠΎΠ»ΡŒ ΠΎΡ‡Π΅Π²ΠΈΠ΄Π½ΠΎ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Β«ΠΌΡ‹ Ρ…ΠΎΡ‚ΠΈΠΌ ΠΎΡ‚ΡΠ»Π΅ΠΆΠΈΠ²Π°Ρ‚ΡŒ количСство ΠΊΠ½ΠΈΠ³, связанных с ΠΊΠ°ΠΆΠ΄Ρ‹ΠΌ Π°Π²Ρ‚ΠΎΡ€ΠΎΠΌΒ».

Π˜Π·ΡƒΡ‡Π΅Π½ΠΈΠ΅ структур Π΄Π°Π½Π½Ρ‹Ρ… ΠΈΠΌΠ΅Π΅Ρ‚ Π²Π°ΠΆΠ½ΠΎΠ΅ Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π΄Π°ΠΆΠ΅ Ссли Π²Ρ‹ Π½Π΅ ΠΈΡ‰Π΅Ρ‚Π΅ Π½ΠΎΠ²ΡƒΡŽ Ρ€Π°Π±ΠΎΡ‚Ρƒ, Π° просто Ρ…ΠΎΡ‚ΠΈΡ‚Π΅ ΡƒΠ»ΡƒΡ‡ΡˆΠΈΡ‚ΡŒ Ρ‚Π΅ΠΊΡƒΡ‰ΡƒΡŽ. Π”Π°Π²Π°ΠΉΡ‚Π΅ Π½Π°Ρ‡Π½Π΅ΠΌ с понимания основ.

Π§Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…?

ΠŸΡ€ΠΎΡΡ‚Ρ‹ΠΌΠΈ словами, структура Π΄Π°Π½Π½Ρ‹Ρ… – это ΠΊΠΎΠ½Ρ‚Π΅ΠΉΠ½Π΅Ρ€, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Ρ…Ρ€Π°Π½ΠΈΡ‚ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ Π² ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Π²ΠΈΠ΄Π΅. Из-Π·Π° Ρ‚Π°ΠΊΠΎΠΉ Β«ΠΊΠΎΠΌΠΏΠΎΠ½ΠΎΠ²ΠΊΠΈΒ» ΠΎΠ½Π° ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ эффСктивной Π² ΠΎΠ΄Π½ΠΈΡ… опСрациях ΠΈ нСэффСктивной Π² Π΄Ρ€ΡƒΠ³ΠΈΡ…. ЦСль Ρ€Π°Π·Ρ€Π°Π±ΠΎΡ‚Ρ‡ΠΈΠΊΠ° – Π²Ρ‹Π±Ρ€Π°Ρ‚ΡŒ ΠΈΠ· ΡΡƒΡ‰Π΅ΡΡ‚Π²ΡƒΡŽΡ‰ΠΈΡ… структур ΠΎΠΏΡ‚ΠΈΠΌΠ°Π»ΡŒΠ½Ρ‹ΠΉ для ΠΊΠΎΠ½ΠΊΡ€Π΅Ρ‚Π½ΠΎΠΉ Π·Π°Π΄Π°Ρ‡ΠΈ Π²Π°Ρ€ΠΈΠ°Π½Ρ‚.

Π—Π°Ρ‡Π΅ΠΌ Π½ΡƒΠΆΠ½Ρ‹ структуры Π΄Π°Π½Π½Ρ‹Ρ…?

Π”Π°Π½Π½Ρ‹Π΅ ΡΠ²Π»ΡΡŽΡ‚ΡΡ самой Π²Π°ΠΆΠ½ΠΎΠΉ ΡΡƒΡ‰Π½ΠΎΡΡ‚ΡŒΡŽ Π² ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ‚ΠΈΠΊΠ΅, Π° структуры ΠΏΠΎΠ·Π²ΠΎΠ»ΡΡŽΡ‚ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ ΠΈΡ… Π² ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Π½Π½ΠΎΠΉ Ρ„ΠΎΡ€ΠΌΠ΅.

ΠšΠ°ΠΊΡƒΡŽ Π±Ρ‹ ΠΏΡ€ΠΎΠ±Π»Π΅ΠΌΡƒ Π²Ρ‹ Π½Π΅ Ρ€Π΅ΡˆΠ°Π»ΠΈ, Π²Π°ΠΌ приходится ΠΈΠΌΠ΅Ρ‚ΡŒ Π΄Π΅Π»ΠΎ с Π΄Π°Π½Π½Ρ‹ΠΌΠΈ β€” Π±ΡƒΠ΄ΡŒ Ρ‚ΠΎ Π·Π°Ρ€ΠΏΠ»Π°Ρ‚Π° сотрудника, Ρ†Π΅Π½Ρ‹ Π½Π° Π°ΠΊΡ†ΠΈΠΈ, список ΠΏΠΎΠΊΡƒΠΏΠΎΠΊ ΠΈΠ»ΠΈ Π΄Π°ΠΆΠ΅ простой Ρ‚Π΅Π»Π΅Ρ„ΠΎΠ½Π½Ρ‹ΠΉ справочник.

Π’ зависимости ΠΎΡ‚ ситуации Π΄Π°Π½Π½Ρ‹Π΅ Π΄ΠΎΠ»ΠΆΠ½Ρ‹ Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒΡΡ Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠΌ Ρ„ΠΎΡ€ΠΌΠ°Ρ‚Π΅. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Ρ‹ Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€Π΅Π΄Π»Π°Π³Π°ΡŽΡ‚ нСсколько Π²Π°Ρ€ΠΈΠ°Π½Ρ‚ΠΎΠ² Ρ‚Π°ΠΊΠΈΡ… Ρ€Π°Π·ΠΌΠ΅Ρ‰Π΅Π½ΠΈΠΉ.

8 часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Ρ… структур

Π”Π°Π²Π°ΠΉΡ‚Π΅ сначала пСрСчислим Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, Π° Π·Π°Ρ‚Π΅ΠΌ рассмотрим ΠΈΡ… ΠΎΠ΄Π½Ρƒ Π·Π° Π΄Ρ€ΡƒΠ³ΠΎΠΉ:

ΠœΠ°ΡΡΠΈΠ²Ρ‹

Массив – это самая простая ΠΈ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΠ°Ρ ΠΈΠ· структур. Π‘Ρ‚Π΅ΠΊΠΈ ΠΈ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ ΡΠ²Π»ΡΡŽΡ‚ΡΡ ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄Π½Ρ‹ΠΌΠΈ ΠΎΡ‚ массивов.

Π’ΠΎΡ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ простого массива Ρ€Π°Π·ΠΌΠ΅Ρ€ΠΎΠΌ 4, содСрТащСго элСмСнты (1, 2, 3 ΠΈ 4).

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠšΠ°ΠΆΠ΄ΠΎΠΌΡƒ ΠΈΠ· Π½ΠΈΡ… присваиваСтся Π½Π΅ΠΎΡ‚Ρ€ΠΈΡ†Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎΠ΅ числовоС Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅ – индСкс, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ соотвСтствуСт ΠΏΠΎΠ·ΠΈΡ†ΠΈΠΈ этого элСмСнта Π² массивС. Π‘ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ языков ΠΎΠΏΡ€Π΅Π΄Π΅Π»ΡΡŽΡ‚ Π½Π°Ρ‡Π°Π»ΡŒΠ½Ρ‹ΠΉ индСкс массива ΠΊΠ°ΠΊ 0.

БущСствуСт Π΄Π²Π° Ρ‚ΠΈΠΏΠ° массивов:

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с массивами

ЧастыС вопросы ΠΎ массивах

Π‘Ρ‚Π΅ΠΊΠΈ

ΠœΡ‹ всС Π·Π½Π°ΠΊΠΎΠΌΡ‹ с ΠΎΠΏΡ†ΠΈΠ΅ΠΉ ΠžΡ‚ΠΌΠ΅Π½ΠΈΡ‚ΡŒ (Undo), которая присутствуСт практичСски Π² ΠΊΠ°ΠΆΠ΄ΠΎΠΌ ΠΏΡ€ΠΈΠ»ΠΎΠΆΠ΅Π½ΠΈΠΈ. Π’Ρ‹ ΠΊΠΎΠ³Π΄Π°-Π½ΠΈΠ±ΡƒΠ΄ΡŒ Π·Π°Π΄ΡƒΠΌΡ‹Π²Π°Π»ΠΈΡΡŒ, ΠΊΠ°ΠΊ это Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚?

Для этого Π²Ρ‹ сохраняСтС ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰ΠΈΠ΅ состояния прилоТСния (ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΈΡ… количСство) Π² памяти Π² Ρ‚Π°ΠΊΠΎΠΌ порядкС, Ρ‡Ρ‚ΠΎ послСднСС сохранСнноС появляСтся ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ. Π­Ρ‚ΠΎ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ сдСлано Ρ‚ΠΎΠ»ΡŒΠΊΠΎ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ массивов. Π—Π΄Π΅ΡΡŒ Π½Π° ΠΏΠΎΠΌΠΎΡ‰ΡŒ ΠΏΡ€ΠΈΡ…ΠΎΠ΄ΠΈΡ‚ стСк.

ΠŸΡ€ΠΈΠΌΠ΅Ρ€ стСка ΠΈΠ· Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ – ΠΊΡƒΡ‡Π° ΠΊΠ½ΠΈΠ³, Π»Π΅ΠΆΠ°Ρ‰ΠΈΡ… Π΄Ρ€ΡƒΠ³ Π½Π° Π΄Ρ€ΡƒΠ³Π΅. Π§Ρ‚ΠΎΠ±Ρ‹ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ΡŒ ΠΊΠ½ΠΈΠ³Ρƒ, которая находится Π³Π΄Π΅-Ρ‚ΠΎ Π² сСрСдинС, Π²Π°ΠΌ Π½ΡƒΠΆΠ½ΠΎ ΡƒΠ΄Π°Π»ΠΈΡ‚ΡŒ всС, Ρ‡Ρ‚ΠΎ Π»Π΅ΠΆΠΈΡ‚ свСрху. Π’Π°ΠΊ Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ LIFO (Last In First Out, послСдним ΠΏΡ€ΠΈΡˆΠ΅Π» – ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΡƒΡˆΠ΅Π»).

Π’ΠΎΡ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ стСка, содСрТащСго Ρ‚Ρ€ΠΈ элСмСнта (1, 2 ΠΈ 3). Π­Π»Π΅ΠΌΠ΅Π½Ρ‚ 3 находится свСрху ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ:

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со стСками

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎ стСках

ΠžΡ‡Π΅Ρ€Π΅Π΄ΠΈ

Как ΠΈ стСк, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ – это линСйная структура Π΄Π°Π½Π½Ρ‹Ρ…, которая Ρ…Ρ€Π°Π½ΠΈΡ‚ элСмСнты ΠΏΠΎΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ. ЕдинствСнноС сущСствСнноС Ρ€Π°Π·Π»ΠΈΡ‡ΠΈΠ΅ Π·Π°ΠΊΠ»ΡŽΡ‡Π°Π΅Ρ‚ΡΡ Π² Ρ‚ΠΎΠΌ, Ρ‡Ρ‚ΠΎ вмСсто использования ΠΌΠ΅Ρ‚ΠΎΠ΄Π° LIFO, ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅Ρ‚ ΠΌΠ΅Ρ‚ΠΎΠ΄ FIFO (First in First Out, ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΡ€ΠΈΡˆΠ΅Π» – ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΡƒΡˆΠ΅Π»).

Π˜Π΄Π΅Π°Π»ΡŒΠ½Ρ‹ΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€ этих структур Π² Ρ€Π΅Π°Π»ΡŒΠ½ΠΎΠΉ ΠΆΠΈΠ·Π½ΠΈ – ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ людСй Π² Π±ΠΈΠ»Π΅Ρ‚Π½ΡƒΡŽ кассу. Если ΠΏΡ€ΠΈΠ΄Π΅Ρ‚ Π½ΠΎΠ²Ρ‹ΠΉ Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, ΠΎΠ½ присоСдинится ΠΊ Π»ΠΈΠ½ΠΈΠΈ с ΠΊΠΎΠ½Ρ†Π°, Π° Π½Π΅ с Π½Π°Ρ‡Π°Π»Π°. А Ρ‡Π΅Π»ΠΎΠ²Π΅ΠΊ, стоящий Π²ΠΏΠ΅Ρ€Π΅Π΄ΠΈ, ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ ΠΏΠΎΠ»ΡƒΡ‡ΠΈΡ‚ Π±ΠΈΠ»Π΅Ρ‚ ΠΈ, ΡΠ»Π΅Π΄ΠΎΠ²Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ, ΠΏΠΎΠΊΠΈΠ½Π΅Ρ‚ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΡŒ.

Π’ΠΎΡ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ ΠΎΡ‡Π΅Ρ€Π΅Π΄ΠΈ, содСрТащСй Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ элСмСнта (1, 2, 3 ΠΈ 4). Π—Π΄Π΅ΡΡŒ 1 находится Π²Π²Π΅Ρ€Ρ…Ρƒ ΠΈ Π±ΡƒΠ΄Π΅Ρ‚ ΡƒΠ΄Π°Π»Π΅Π½ ΠΏΠ΅Ρ€Π²Ρ‹ΠΌ:

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ с очСрСдями

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎΠ± очСрСдях

Бвязный список

Π•Ρ‰Π΅ ΠΎΠ΄Π½Π° ваТная линСйная структура Π΄Π°Π½Π½Ρ‹Ρ…, которая Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ взгляд ΠΏΠΎΡ…ΠΎΠΆΠ° Π½Π° массив, Π½ΠΎ отличаСтся распрСдСлСниСм памяти, Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ ΠΎΡ€Π³Π°Π½ΠΈΠ·Π°Ρ†ΠΈΠ΅ΠΉ ΠΈ способом выполнСния основных ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ вставки ΠΈ удалСния.

Бвязный список – это ΡΠ΅Ρ‚ΡŒ ΡƒΠ·Π»ΠΎΠ², ΠΊΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… содСрТит Π΄Π°Π½Π½Ρ‹Π΅ ΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΡƒΠ·Π΅Π» Π² Ρ†Π΅ΠΏΠΎΡ‡ΠΊΠ΅. Π’Π°ΠΊΠΆΠ΅ Π΅ΡΡ‚ΡŒ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΏΠ΅Ρ€Π²Ρ‹ΠΉ элСмСнт – head. Если список пуст, Ρ‚ΠΎ ΠΎΠ½ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚ Π½Π° null.

БвязныС списки ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ для Ρ€Π΅Π°Π»ΠΈΠ·Π°Ρ†ΠΈΠΈ Ρ„Π°ΠΉΠ»ΠΎΠ²Ρ‹Ρ… систСм, Ρ…ΡΡˆ-Ρ‚Π°Π±Π»ΠΈΡ† ΠΈ списков смСТности.

Π’ΠΎΡ‚ Π²ΠΈΠ·ΡƒΠ°Π»ΡŒΠ½ΠΎΠ΅ прСдставлСниС Π²Π½ΡƒΡ‚Ρ€Π΅Π½Π½Π΅ΠΉ структуры связного списка:

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

ΠžΡΠ½ΠΎΠ²Π½Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ со связными списками

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎ связных списках

Π“Ρ€Π°Ρ„Ρ‹

Π“Ρ€Π°Ρ„ прСдставляСт собой Π½Π°Π±ΠΎΡ€ ΡƒΠ·Π»ΠΎΠ², соСдинСнных Π΄Ρ€ΡƒΠ³ с Π΄Ρ€ΡƒΠ³ΠΎΠΌ Π² Π²ΠΈΠ΄Π΅ сСти. Π£Π·Π»Ρ‹ Ρ‚Π°ΠΊΠΆΠ΅ Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ΡΡ Π²Π΅Ρ€ΡˆΠΈΠ½Π°ΠΌΠΈ. ΠŸΠ°Ρ€Π° (x, y) называСтся Ρ€Π΅Π±Ρ€ΠΎΠΌ, ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ΡƒΠΊΠ°Π·Ρ‹Π²Π°Π΅Ρ‚, Ρ‡Ρ‚ΠΎ Π²Π΅Ρ€ΡˆΠΈΠ½Π° x соСдинСна с Π²Π΅Ρ€ΡˆΠΈΠ½ΠΎΠΉ y. Π Π΅Π±Ρ€ΠΎ ΠΌΠΎΠΆΠ΅Ρ‚ ΡΠΎΠ΄Π΅Ρ€ΠΆΠ°Ρ‚ΡŒ вСс/ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒ, показывая, сколько Π·Π°Ρ‚Ρ€Π°Ρ‚ трСбуСтся, Ρ‡Ρ‚ΠΎΠ±Ρ‹ ΠΏΡ€ΠΎΠΉΡ‚ΠΈ ΠΎΡ‚ x Π΄ΠΎ y.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π’ языкС программирования Π³Ρ€Π°Ρ„Ρ‹ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ прСдставлСны Π² Π΄Π²ΡƒΡ… Ρ„ΠΎΡ€ΠΌΠ°Ρ…:

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎ Π³Ρ€Π°Ρ„Π°Ρ…

Π”Π΅Ρ€Π΅Π²ΡŒΡ

Π”Π΅Ρ€Π΅Π²ΠΎ – это иСрархичСская структура Π΄Π°Π½Π½Ρ‹Ρ…, состоящая ΠΈΠ· Π²Π΅Ρ€ΡˆΠΈΠ½ (ΡƒΠ·Π»ΠΎΠ²) ΠΈ Ρ€Π΅Π±Π΅Ρ€, ΡΠΎΠ΅Π΄ΠΈΠ½ΡΡŽΡ‰ΠΈΡ… ΠΈΡ…. Они ΠΏΠΎΡ…ΠΎΠΆΠΈ Π½Π° Π³Ρ€Π°Ρ„Ρ‹, Π½ΠΎ Π΅ΡΡ‚ΡŒ ΠΎΠ΄Π½ΠΎ Π²Π°ΠΆΠ½ΠΎΠ΅ ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅: Π² Π΄Π΅Ρ€Π΅Π²Π΅ Π½Π΅ ΠΌΠΎΠΆΠ΅Ρ‚ Π±Ρ‹Ρ‚ΡŒ Ρ†ΠΈΠΊΠ»Π°.

Π”Π΅Ρ€Π΅Π²ΡŒΡ ΡˆΠΈΡ€ΠΎΠΊΠΎ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π² искусствСнном ΠΈΠ½Ρ‚Π΅Π»Π»Π΅ΠΊΡ‚Π΅ ΠΈ слоТных Π°Π»Π³ΠΎΡ€ΠΈΡ‚ΠΌΠ°Ρ… для обСспСчСния эффСктивного ΠΌΠ΅Ρ…Π°Π½ΠΈΠ·ΠΌΠ° хранСния Π΄Π°Π½Π½Ρ‹Ρ….

Π’ΠΎΡ‚ ΠΈΠ·ΠΎΠ±Ρ€Π°ΠΆΠ΅Π½ΠΈΠ΅ простого Π΄Π΅Ρ€Π΅Π²Π°, ΠΈ основныС Ρ‚Π΅Ρ€ΠΌΠΈΠ½Ρ‹:

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Из всСх Ρ‚ΠΈΠΏΠΎΠ² Ρ‡Π°Ρ‰Π΅ всСго ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ ΠΈ Π±ΠΈΠ½Π°Ρ€Π½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ поиска.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎ Π΄Π΅Ρ€Π΅Π²ΡŒΡΡ…

ΠŸΡ€Π΅Ρ„ΠΈΠΊΡΠ½ΠΎΠ΅ Π΄Π΅Ρ€Π΅Π²ΠΎ

ΠŸΡ€Π΅Ρ„ΠΈΠΊΡΠ½Ρ‹Π΅ Π΄Π΅Ρ€Π΅Π²ΡŒΡ (tries) – Π΄Ρ€Π΅Π²ΠΎΠ²ΠΈΠ΄Π½Ρ‹Π΅ структуры Π΄Π°Π½Π½Ρ‹Ρ…, эффСктивныС для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ Π·Π°Π΄Π°Ρ‡ со строками. Они ΠΎΠ±Π΅ΡΠΏΠ΅Ρ‡ΠΈΠ²Π°ΡŽΡ‚ быстрый поиск ΠΈ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡŽΡ‚ΡΡ прСимущСствСнно для поиска слов Π² словарС, автодополнСния Π² поисковых систСмах ΠΈ Π΄Π°ΠΆΠ΅ для IP-ΠΌΠ°Ρ€ΡˆΡ€ΡƒΡ‚ΠΈΠ·Π°Ρ†ΠΈΠΈ.

Π’ΠΎΡ‚ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΡ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ‚Ρ€ΠΈ слова top, thus ΠΈ their хранятся Π² прСфиксном Π΄Π΅Ρ€Π΅Π²Π΅:

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Π‘Π»ΠΎΠ²Π° Ρ€Π°Π·ΠΌΠ΅Ρ‰Π°ΡŽΡ‚ΡΡ свСрху Π²Π½ΠΈΠ·. Π’Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹Π΅ Π·Π΅Π»Π΅Π½Ρ‹ΠΌ элСмСнты ΠΏΠΎΠΊΠ°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΊΠΎΠ½Π΅Ρ† ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ слова.

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎ прСфиксных Π΄Π΅Ρ€Π΅Π²ΡŒΡΡ…

Π₯Сш-Π’Π°Π±Π»ΠΈΡ†Π°

Π₯Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠ΅ – это процСсс, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅ΠΌΡ‹ΠΉ для ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΉ ΠΈΠ΄Π΅Π½Ρ‚ΠΈΡ„ΠΈΠΊΠ°Ρ†ΠΈΠΈ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ² ΠΈ хранСния ΠΊΠ°ΠΆΠ΄ΠΎΠ³ΠΎ ΠΈΠ· Π½ΠΈΡ… Π² Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠΌ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ вычислСнном ΡƒΠ½ΠΈΠΊΠ°Π»ΡŒΠ½ΠΎΠΌ индСксС – ΠΊΠ»ΡŽΡ‡Π΅. Π˜Ρ‚Π°ΠΊ, ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ хранится Π² Π²ΠΈΠ΄Π΅ ΠΏΠ°Ρ€Ρ‹ ΠΊΠ»ΡŽΡ‡-Π·Π½Π°Ρ‡Π΅Π½ΠΈΠ΅, Π° коллСкция Ρ‚Π°ΠΊΠΈΡ… элСмСнтов называСтся словарСм. ΠšΠ°ΠΆΠ΄Ρ‹ΠΉ ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ ΠΌΠΎΠΆΠ½ΠΎ Π½Π°ΠΉΡ‚ΠΈ с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Π΅Π³ΠΎ ΠΊΠ»ΡŽΡ‡Π°. БущСствуСт нСсколько структур, основанных Π½Π° Ρ…Π΅ΡˆΠΈΡ€ΠΎΠ²Π°Π½ΠΈΠΈ, Π½ΠΎ Π½Π°ΠΈΠ±ΠΎΠ»Π΅Π΅ часто ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΠ΅Ρ‚ΡΡ Ρ…Π΅Ρˆ-Ρ‚Π°Π±Π»ΠΈΡ†Π°, которая ΠΎΠ±Ρ‹Ρ‡Π½ΠΎ рСализуСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ массивов.

ΠŸΡ€ΠΎΠΈΠ·Π²ΠΎΠ΄ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΡΡ‚ΡŒ структуры зависит ΠΎΡ‚ Ρ‚Ρ€Π΅Ρ… Ρ„Π°ΠΊΡ‚ΠΎΡ€ΠΎΠ²:

Π’ΠΎΡ‚ ΠΈΠ»Π»ΡŽΡΡ‚Ρ€Π°Ρ†ΠΈΡ Ρ‚ΠΎΠ³ΠΎ, ΠΊΠ°ΠΊ Ρ…ΡΡˆ отобраТаСтся Π² массивС. ИндСкс вычисляСтся с ΠΏΠΎΠΌΠΎΡ‰ΡŒΡŽ Ρ…Π΅Ρˆ-Ρ„ΡƒΠ½ΠΊΡ†ΠΈΠΈ.

ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ Ρ„ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π‘ΠΌΠΎΡ‚Ρ€Π΅Ρ‚ΡŒ ΠΊΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΡƒ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. ΠšΠ°Ρ€Ρ‚ΠΈΠ½ΠΊΠ° ΠΏΡ€ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡. Π€ΠΎΡ‚ΠΎ ΠΊΠ°ΠΊΠΈΠ΅ структуры Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΡ€ΠΈΠΌΠ΅Π½ΡΡŽΡ‚ΡΡ для Ρ€Π΅ΡˆΠ΅Π½ΠΈΡ ΠΊΠ°ΠΊΠΈΡ… Π·Π°Π΄Π°Ρ‡

Часто Π·Π°Π΄Π°Π²Π°Π΅ΠΌΡ‹Π΅ вопросы ΠΎ Ρ…Π΅Ρˆ-Ρ‚Π°Π±Π»ΠΈΡ†Π°Ρ…

Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π²Ρ‹ Π·Π½Π°Π΅Ρ‚Π΅ 8 основных структур Π΄Π°Π½Π½Ρ‹Ρ… любого языка программирования. ΠœΠΎΠΆΠ΅Ρ‚Π΅ смСло ΠΎΡ‚ΠΏΡ€Π°Π²Π»ΡΡ‚ΡŒΡΡ Π½Π° IT-собСсСдованиС.

Π˜ΡΡ‚ΠΎΡ‡Π½ΠΈΠΊ

Π”ΠΎΠ±Π°Π²ΠΈΡ‚ΡŒ ΠΊΠΎΠΌΠΌΠ΅Π½Ρ‚Π°Ρ€ΠΈΠΉ

Π’Π°Ρˆ адрСс email Π½Π΅ Π±ΡƒΠ΄Π΅Ρ‚ ΠΎΠΏΡƒΠ±Π»ΠΈΠΊΠΎΠ²Π°Π½. ΠžΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½Ρ‹Π΅ поля ΠΏΠΎΠΌΠ΅Ρ‡Π΅Π½Ρ‹ *