ΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² написании студСнчСских Ρ€Π°Π±ΠΎΡ‚
АнтистрСссовый сСрвис

ΠœΡƒΠ»ΡŒΡ‚ΠΈΡΠΏΠΈΡΠΊΠΈ

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°ΡΠŸΠΎΠΌΠΎΡ‰ΡŒ Π² Π½Π°ΠΏΠΈΡΠ°Π½ΠΈΠΈΠ£Π·Π½Π°Ρ‚ΡŒ ΡΡ‚ΠΎΠΈΠΌΠΎΡΡ‚ΡŒΠΌΠΎΠ΅ΠΉ Ρ€Π°Π±ΠΎΡ‚Ρ‹

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

ΠœΡƒΠ»ΡŒΡ‚ΠΈΡΠΏΠΈΡΠΊΠΈ (Ρ€Π΅Ρ„Π΅Ρ€Π°Ρ‚, курсовая, Π΄ΠΈΠΏΠ»ΠΎΠΌ, ΠΊΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π°Ρ)

ΠœΠ†ΠΠ†Π‘Π’Π•Π Π‘Π’Π’Πž ΠžΠ‘Π’Π†Π’Π˜ Π† НАУКИ Π£ΠšΠ ΠΠ‡ΠΠ˜

Π₯Π•Π Π‘ΠžΠΠ‘Π¬ΠšΠ˜Π™ ΠΠΠ¦Π†ΠžΠΠΠ›Π¬ΠΠ˜Π™ Π’Π•Π₯ΠΠ†Π§ΠΠ˜Π™ Π£ΠΠ†Π’Π•Π Π‘Π˜Π’Π•Π’

ΠšΠΠ€Π•Π”Π Π Π†ΠΠ€ΠžΠ ΠœΠΠ¦Π†Π™ΠΠ˜Π₯ Π’Π•Π₯ΠΠžΠ›ΠžΠ“Π†Π™

ΠšΠΎΠ½Ρ‚Ρ€ΠΎΠ»ΡŒΠ½Π° Ρ€ΠΎΠ±ΠΎΡ‚Π° Π· Π΄ΠΈΡΡ†ΠΈΠΏΠ»Ρ–Π½ΠΈ:

«Π†Π½Ρ„ΠΎΡ€ΠΌΠ°Ρ†Ρ–ΠΉΠ½Ρ– систСми Ρ‚Π° ΡΡ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€ΠΈ Π΄Π°Π½ΠΈΡ…»

Π’ΠΈΠΊΠΎΠ½Π°Π²:студСнт Π³Ρ€. 4зКБМ2

АврамСнко Π†.

ΠŸΠ΅Ρ€Π΅Π²Ρ–Ρ€ΠΈΠ²: Π’Π΅Π·ΡƒΠΌΡΡŒΠΊΠΈΠΉ О.К.

Π₯Срсон — 2009

Π’Π΅ΠΌΠ°: ΠœΡƒΠ»ΡŒΡ‚ΠΈΡΠΏΠΈΡΠΊΠΈ

Π’ ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΠ½Ρ‹Ρ… систСмах, ΠΎΠ±Ρ€Π°Π±Π°Ρ‚Ρ‹Π²Π°ΡŽΡ‰ΠΈΡ… ΠΎΠ±ΡŠΠ΅ΠΊΡ‚Ρ‹ слоТной структуры, ΠΌΠΎΠ³ΡƒΡ‚ Ρ€Π΅ΡˆΠ°Ρ‚ΡŒΡΡ Ρ€Π°Π·Π½Ρ‹Π΅ ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡ΠΈ, каТдая ΠΈΠ· ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Ρ… Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚, Π²ΠΎΠ·ΠΌΠΎΠΆΠ½ΠΎ, ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Π½Π΅ Π²ΡΠ΅Π³ΠΎ мноТСства ΠΎΠ±ΡŠΠ΅ΠΊΡ‚ΠΎΠ², Π° Π»ΠΈΡˆΡŒ ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Ρ‚ΠΎ Π΅Π³ΠΎ подмноТСства. Π’Π°ΠΊ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, Π² Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ систСмС ΡƒΡ‡Π΅Ρ‚Π° Π»ΠΈΡ†, ΠΏΠΎΡΡ‚Ρ€Π°Π΄Π°Π²ΡˆΠΈΡ… вслСдствиС Π°Π²Π°Ρ€ΠΈΠΈ Π½Π° Π§ΠΠ­Π‘, каТдая запись ΠΎΠ± ΠΎΠ΄Π½ΠΎΠΌ ΠΏΠΎΡΡ‚Ρ€Π°Π΄Π°Π²ΡˆΠ΅ΠΌ содСрТит Π±ΠΎΠ»Π΅Π΅ 50 ΠΏΠΎΠ»Π΅ΠΉ Π² ΡΠ²ΠΎΠ΅ΠΉ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΎΠ½Π½ΠΎΠΉ части.

Π Π΅ΡˆΠ°Π΅ΠΌΡ‹Π΅ ΠΆΠ΅ Π°Π²Ρ‚ΠΎΠΌΠ°Ρ‚ΠΈΠ·ΠΈΡ€ΠΎΠ²Π°Π½Π½ΠΎΠΉ систСмой Π·Π°Π΄Π°Ρ‡ΠΈ ΠΌΠΎΠ³ΡƒΡ‚ ΠΏΠΎΡ‚Ρ€Π΅Π±ΠΎΠ²Π°Ρ‚ΡŒ Π²Ρ‹Π±ΠΎΡ€ΠΊΠΈ, Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€:

Β· участников Π»ΠΈΠΊΠ²ΠΈΠ΄Π°Ρ†ΠΈΠΈ Π°Π²Π°Ρ€ΠΈΠΈ;

Β· пСрСсСлСнцСв ΠΈΠ· Π·Π°Ρ€Π°ΠΆΠ΅Π½Π½ΠΎΠΉ Π·ΠΎΠ½Ρ‹;

Β· Π»ΠΈΡ†, состоящих Π½Π° ΠΊΠ²Π°Ρ€Ρ‚ΠΈΡ€Π½ΠΎΠΌ ΡƒΡ‡Π΅Ρ‚Π΅;

Β· Π»ΠΈΡ† с Π·Π°Π±ΠΎΠ»Π΅Π²Π°Π½ΠΈΡΠΌΠΈ Ρ‰ΠΈΡ‚ΠΎΠ²ΠΈΠ΄Π½ΠΎΠΉ ΠΆΠ΅Π»Π΅Π·Ρ‹;

Β· ΠΈ Ρ‚. Π΄., ΠΈ Ρ‚. ΠΏ.

Рис. 5.11. ΠŸΡ€ΠΈΠΌΠ΅Ρ€ ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠΏΠΈΡΠΊΠ°

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

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

КаТдая ΠΏΠΎΠ΄Π·Π°Π΄Π°Ρ‡Π° Ρ€Π°Π±ΠΎΡ‚Π°Π΅Ρ‚ со ΡΠ²ΠΎΠΈΠΌ подмноТСством ΠΊΠ°ΠΊ с Π»ΠΈΠ½Π΅ΠΉΠ½Ρ‹ΠΌ списком, ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΡƒΡ для этого ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½Π½ΠΎΠ΅ ΠΏΠΎΠ»Π΅ связок. Π‘ΠΏΠ΅Ρ†ΠΈΡ„ΠΈΠΊΠ° ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠΏΠΈΡΠΊΠ° проявляСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΡ элСмСнта ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°. Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ элСмСнта ΠΈΠ· ΠΊΠ°ΠΊΠΎΠ³ΠΎ-Π»ΠΈΠ±ΠΎ ΠΎΠ΄Π½ΠΎΠ³ΠΎ списка Π΅Ρ‰Π΅ Π½Π΅ ΠΎΠ·Π½Π°Ρ‡Π°Π΅Ρ‚ нСобходимости удалСния элСмСнта ΠΈΠ· ΠΏΠ°ΠΌΡΡ‚ΠΈ, Ρ‚Π°ΠΊ ΠΊΠ°ΠΊ элСмСнт ΠΌΠΎΠΆΠ΅Ρ‚ ΠΎΡΡ‚Π°Π²Π°Ρ‚ΡŒΡΡ Π² ΡΠΎΡΡ‚Π°Π²Π΅ Π΄Ρ€ΡƒΠ³ΠΈΡ… списков. ΠŸΠ°ΠΌΡΡ‚ΡŒ Π΄ΠΎΠ»ΠΆΠ½Π° ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π°Ρ‚ΡŒΡΡ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² Ρ‚ΠΎΠΌ случаС, ΠΊΠΎΠ³Π΄Π° элСмСнт ΡƒΠΆΠ΅ Π½Π΅ Π²Ρ…ΠΎΠ΄ΠΈΡ‚ Π½ΠΈ Π² ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‡Π°ΡΡ‚Π½Ρ‹Ρ… списков ΠΌΡƒΠ»ΡŒΡ‚ΠΈΡΠΏΠΈΡΠΊΠ°. ΠžΠ±Ρ‹Ρ‡Π½ΠΎ Π·Π°Π΄Π°Ρ‡Π° удалСния упрощаСтся Ρ‚Π΅ΠΌ, Ρ‡Ρ‚ΠΎ ΠΎΠ΄ΠΈΠ½ ΠΈΠ· Ρ‡Π°ΡΡ‚Π½Ρ‹Ρ… списков являСтся Π³Π»Π°Π²Π½Ρ‹ΠΌ — Π² Π½Π΅Π³ΠΎ ΠΎΠ±ΡΠ·Π°Ρ‚Π΅Π»ΡŒΠ½ΠΎ входят всС ΠΈΠΌΠ΅ΡŽΡ‰ΠΈΠ΅ΡΡ элСмСнты. Π’ΠΎΠ³Π΄Π° ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ элСмСнта ΠΈΠ· Π»ΡŽΠ±ΠΎΠ³ΠΎ Π½Π΅Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ списка состоит Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π² ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΠΈ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ, Π½ΠΎ Π½Π΅ Π² ΠΎΡΠ²ΠΎΠ±ΠΎΠΆΠ΄Π΅Π½ΠΈΠΈ памяти. Π˜ΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅ ΠΆΠ΅ ΠΈΠ· Π³Π»Π°Π²Π½ΠΎΠ³ΠΎ списка Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ Π½Π΅ Ρ‚ΠΎΠ»ΡŒΠΊΠΎ освобоТдСния памяти, Π½ΠΎ ΠΈ ΠΏΠ΅Ρ€Π΅ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡ ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»Π΅ΠΉ ΠΊΠ°ΠΊ Π² Π³Π»Π°Π²Π½ΠΎΠΌ спискС, Ρ‚Π°ΠΊ ΠΈ Π²ΠΎ Π²ΡΠ΅Ρ… Π½Π΅Π³Π»Π°Π²Π½Ρ‹Ρ… списках, Π² ΠΊΠΎΡ‚ΠΎΡ€Ρ‹Π΅ удаляСмый элСмСнт Π²Ρ…ΠΎΠ΄ΠΈΠ».

Бписки

ΠžΠ±ΡΡƒΠ΄ΠΈΠΌ вопрос ΠΎ Ρ‚ΠΎΠΌ, ΠΊΠ°ΠΊ Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти ΠΌΠΎΠΆΠ½ΠΎ ΡΠΎΠ·Π΄Π°Ρ‚ΡŒ структуру Π΄Π°Π½Π½Ρ‹Ρ… ΠΏΠ΅Ρ€Π΅ΠΌΠ΅Π½Π½ΠΎΠ³ΠΎ Ρ€Π°Π·ΠΌΠ΅Ρ€Π°.

Π Π°Π·Π±Π΅Ρ€Π΅ΠΌ ΡΠ»Π΅Π΄ΡƒΡŽΡ‰ΠΈΠΉ ΠΏΡ€ΠΈΠΌΠ΅Ρ€. Π’ ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ физичСского экспСримСнта ΠΌΠ½ΠΎΠ³ΠΎΠΊΡ€Π°Ρ‚Π½ΠΎ ΡΠ½ΠΈΠΌΠ°ΡŽΡ‚ΡΡ показания ΠΏΡ€ΠΈΠ±ΠΎΡ€Π° (допустим, Ρ‚Π΅Ρ€ΠΌΠΎΠΌΠ΅Ρ‚Ρ€Π°) ΠΈ Π·Π°ΠΏΠΈΡΡ‹Π²Π°ΡŽΡ‚ся Π² ΠΊΠΎΠΌΠΏΡŒΡŽΡ‚Π΅Ρ€Π½ΡƒΡŽ ΠΏΠ°ΠΌΡΡ‚ΡŒ для дальнСйшСй ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ. Π—Π°Ρ€Π°Π½Π΅Π΅ нСизвСстно, сколько Π±ΡƒΠ΄Π΅Ρ‚ ΠΏΡ€ΠΎΠΈΠ·Π²Π΅Π΄Π΅Π½ΠΎ ΠΈΠ·ΠΌΠ΅Ρ€Π΅Π½ΠΈΠΉ.

Если для ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΠΈ Ρ‚Π°ΠΊΠΈΡ… Π΄Π°Π½Π½Ρ‹Ρ… Π½Π΅ ΠΈΡΠΏΠΎΠ»ΡŒΠ·ΠΎΠ²Π°Ρ‚ΡŒ внСшнюю ΠΏΠ°ΠΌΡΡ‚ΡŒ (Ρ„Π°ΠΉΠ»Ρ‹), Ρ‚ΠΎ Ρ€Π°Π·ΡƒΠΌΠ½ΠΎ Ρ€Π°ΡΠΏΠΎΠ»ΠΎΠΆΠΈΡ‚ΡŒ ΠΈΡ… Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти. Π’ΠΎ-ΠΏΠ΅Ρ€Π²Ρ‹Ρ…, динамичСская ΠΏΠ°ΠΌΡΡ‚ΡŒ позволяСт Ρ…Ρ€Π°Π½ΠΈΡ‚ΡŒ больший объСм ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΠΈ, Ρ‡Π΅ΠΌ статичСская. А Π²ΠΎ-Π²Ρ‚ΠΎΡ€Ρ‹Ρ…, Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΎΠΉ памяти эти числа ΠΌΠΎΠΆΠ½ΠΎ ΠΎΡ€Π³Π°Π½ΠΈΠ·ΠΎΠ²Π°Ρ‚ΡŒ Π² ΡΠ²ΡΠ·Π°Π½Π½Ρ‹ΠΉ список, ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π½Π΅ Ρ‚Ρ€Π΅Π±ΡƒΠ΅Ρ‚ ΠΏΡ€Π΅Π΄Π²Π°Ρ€ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎΠ³ΠΎ указания количСства чисСл, ΠΏΠΎΠ΄ΠΎΠ±Π½ΠΎ массиву. Π§Ρ‚ΠΎ ΠΆΠ΅ Ρ‚Π°ΠΊΠΎΠ΅ «ΡΠ²ΡΠ·Π°Π½Π½Ρ‹ΠΉ список»? БхСматичСски ΠΎΠ½ Π²Ρ‹Π³Π»ΡΠ΄ΠΈΡ‚ Ρ‚Π°ΠΊ:

Π—Π΄Π΅ΡΡŒ Inf — информационная Ρ‡Π°ΡΡ‚ΡŒ Π·Π²Π΅Π½Π° списка (Π²Π΅Π»ΠΈΡ‡ΠΈΠ½Π° любого простого ΠΈΠ»ΠΈ структурированного Ρ‚ΠΈΠΏΠ°, ΠΊΡ€ΠΎΠΌΠ΅ Ρ„Π°ΠΉΠ»ΠΎΠ²ΠΎΠ³ΠΎ), Next — ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π·Π²Π΅Π½ΠΎ списка; First — ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π·Π°Π³Π»Π°Π²Π½ΠΎΠ΅ Π·Π²Π΅Π½ΠΎ списка.

Богласно ΠΎΠΏΡ€Π΅Π΄Π΅Π»Π΅Π½ΠΈΡŽ, список располагаСтся Π² Π΄ΠΈΠ½Π°ΠΌΠΈΡ‡Π΅ΡΠΊΠΈ распрСдСляСмой памяти, Π² ΡΡ‚атичСской памяти хранится лишь ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π·Π°Π³Π»Π°Π²Π½ΠΎΠ΅ Π·Π²Π΅Π½ΠΎ. Π‘Ρ‚Ρ€ΡƒΠΊΡ‚ΡƒΡ€Π°, Π² ΠΎΡ‚Π»ΠΈΡ‡ΠΈΠ΅ ΠΎΡ‚ ΠΌΠ°ΡΡΠΈΠ²Π°, являСтся Π΄Π΅ΠΉΡΡ‚Π²ΠΈΡ‚Π΅Π»ΡŒΠ½ΠΎ динамичСской: звСнья ΡΠΎΠ·Π΄Π°ΡŽΡ‚ΡΡ ΠΈ ΡƒΠ΄Π°Π»ΡΡŽΡ‚ся ΠΏΠΎ ΠΌΠ΅Ρ€Π΅ нСобходимости, Π² ΠΏΡ€ΠΎΡ†Π΅ΡΡΠ΅ выполнСния ΠΏΡ€ΠΎΠ³Ρ€Π°ΠΌΠΌΡ‹.

Для объявлСния списка сдСлано ΠΈΡΠΊΠ»ΡŽΡ‡Π΅Π½ΠΈΠ΅: ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° Π·Π²Π΅Π½ΠΎ списка ΠΎΠ±ΡŠΡΠ²Π»ΡΠ΅Ρ‚ΡΡ Ρ€Π°Π½ΡŒΡˆΠ΅, Ρ‡Π΅ΠΌ само Π·Π²Π΅Π½ΠΎ. Π’ ΠΎΠ±Ρ‰Π΅ΠΌ Π²ΠΈΠ΄Π΅ объявлСниС выглядит Ρ‚Π°ΠΊ.

Type U = ^Zveno;

Zveno = Record Inf: BT; Next: U End;

Π—Π΄Π΅ΡΡŒ BT — Π½Π΅ΠΊΠΎΡ‚ΠΎΡ€Ρ‹ΠΉ Π±Π°Π·ΠΎΠ²Ρ‹ΠΉ Ρ‚ΠΈΠΏ элСмСнтов списка.

Если ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ ссылаСтся Ρ‚ΠΎΠ»ΡŒΠΊΠΎ Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π·Π²Π΅Π½ΠΎ списка (ΠΊΠ°ΠΊ ΠΏΠΎΠΊΠ°Π·Π°Π½ΠΎ Π½Π° Ρ€ΠΈΡΡƒΠ½ΠΊΠ΅ ΠΈ Π² ΠΎΠ±ΡŠΡΠ²Π»Π΅Π½Π½ΠΎΠΉ Π²Ρ‹ΡˆΠ΅ структурС), Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ список Π½Π°Π·Ρ‹Π²Π°ΡŽΡ‚ ΠΎΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ, Ссли Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ ΠΈ ΠΏΡ€Π΅Π΄Ρ‹Π΄ΡƒΡ‰Π΅Π΅ звСнья — Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹ΠΌ списком. Если ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π² ΠΏΠΎΡΠ»Π΅Π΄Π½Π΅ΠΌ Π·Π²Π΅Π½Π΅ установлСн Π½Π΅ Π² Nil, Π° ΡΡΡ‹Π»Π°Π΅Ρ‚ся Π½Π° Π·Π°Π³Π»Π°Π²Π½ΠΎΠ΅ Π·Π²Π΅Π½ΠΎ списка, Ρ‚ΠΎ Ρ‚Π°ΠΊΠΎΠΉ список называСтся ΠΊΠΎΠ»ΡŒΡ†Π΅Π²Ρ‹ΠΌ. ΠšΠΎΠ»ΡŒΡ†Π΅Π²Ρ‹ΠΌΠΈ ΠΌΠΎΠ³ΡƒΡ‚ Π±Ρ‹Ρ‚ΡŒ ΠΈ ΠΎΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅, ΠΈ Π΄Π²ΡƒΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½Ρ‹Π΅ списки.

Π‘ΠΎΠ»Π΅Π΅ ΠΏΠΎΠ΄Ρ€ΠΎΠ±Π½ΠΎ рассмотрим Ρ€Π°Π±ΠΎΡ‚Ρƒ со ΡΠ²ΡΠ·Π°Π½Π½Ρ‹ΠΌΠΈ списками Π½Π° ΠΏΡ€ΠΈΠΌΠ΅Ρ€Π΅ ΠΎΠ΄Π½ΠΎΠ½Π°ΠΏΡ€Π°Π²Π»Π΅Π½Π½ΠΎΠ³ΠΎ Π½Π΅ΠΊΠΎΠ»ΡŒΡ†Π΅Π²ΠΎΠ³ΠΎ списка.

Π’Ρ‹Π΄Π΅Π»ΠΈΠΌ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Π΅ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΈ Π½Π°Π΄ списками:

Β· Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° Π² Π½Π°Ρ‡Π°Π»ΠΎ списка;

Β· ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° списка;

Β· Π΄ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ мСсто списка, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, послС Π·Π²Π΅Π½Π°, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Π΄Π°Π½);

Β· ΡƒΠ΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° ΠΈΠ· ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ мСста списка, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° (Π½Π°ΠΏΡ€ΠΈΠΌΠ΅Ρ€, послС Π·Π²Π΅Π½Π°, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Π΄Π°Π½);

Β· ΠΏΡ€ΠΎΠ²Π΅Ρ€ΠΊΠ°, пуст Π»ΠΈ список;

Β· очистка списка;

Β· ΠΏΠ΅Ρ‡Π°Ρ‚ΡŒ списка.

Π Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ Π²Ρ‹Π΄Π΅Π»Π΅Π½Π½Ρ‹ΠΉ Π½Π°Π±ΠΎΡ€ ΠΎΠΏΠ΅Ρ€Π°Ρ†ΠΈΠΉ Π² Π²ΠΈΠ΄Π΅ модуля. ΠŸΠΎΠ΄ΠΊΠ»ΡŽΡ‡ΠΈΠ² этот ΠΌΠΎΠ΄ΡƒΠ»ΡŒ, ΠΌΠΎΠΆΠ½ΠΎ Ρ€Π΅ΡˆΠΈΡ‚ΡŒ Π±ΠΎΠ»ΡŒΡˆΠΈΠ½ΡΡ‚Π²ΠΎ Ρ‚ΠΈΠΏΠΎΠ²Ρ‹Ρ… Π·Π°Π΄Π°Ρ‡ Π½Π° ΠΎΠ±Ρ€Π°Π±ΠΎΡ‚ΠΊΡƒ списка. ΠŸΡƒΡΡ‚ΡŒ список объявлСн Ρ‚Π°ΠΊ, ΠΊΠ°ΠΊ Π±Ρ‹Π»ΠΎ описано Π²Ρ‹ΡˆΠ΅. ΠŸΠ΅Ρ€Π²Ρ‹Π΅ Ρ‡Π΅Ρ‚Ρ‹Ρ€Π΅ дСйствия сначала Ρ€Π΅Π°Π»ΠΈΠ·ΡƒΠ΅ΠΌ ΠΎΡ‚Π΄Π΅Π»ΡŒΠ½ΠΎ, снабдив ΠΈΡ… ΠΈΠ»Π»ΡŽΡΡ‚рациями.

1. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° Π² Π½Π°Ρ‡Π°Π»ΠΎ списка

{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° добавлСния Π·Π²Π΅Π½Π° Π² Π½Π°Ρ‡Π°Π»ΠΎ списка; Π² x ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ся добавляСмая информация}

Procedure V_Nachalo (Var First: U; X: BT);

Var Vsp: U;

Begin

New (Vsp);

Vsp^.Inf := X;

Vsp^.Next := First; {Π’ΠΎ Π·Π²Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π·Π°Π³Π»Π°Π²Π½Ρ‹ΠΌ, становится Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎ ΡΡ‡Ρ‘Ρ‚Ρƒ}

First := Vsp; {НовоС Π·Π²Π΅Π½ΠΎ становится Π·Π°Π³Π»Π°Π²Π½Ρ‹ΠΌ}

End;

2. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° списка

{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° удалСния Π·Π²Π΅Π½Π° ΠΈΠ· Π½Π°Ρ‡Π°Π»Π° списка;

Π² x ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ся информация ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ Π·Π²Π΅Π½Π°}

Procedure Iz_Nachala (Var First: U; Var X: BT);

Var Vsp: U;

Begin

Vsp := First; {Π—Π°Π±ΠΈΡ€Π°Π΅ΠΌ ссылку Π½Π° Ρ‚Π΅ΠΊΡƒΡ‰Π΅Π΅ Π·Π°Π³Π»Π°Π²Π½ΠΎΠ΅ Π·Π²Π΅Π½ΠΎ}

First := First^.Next; {Π’ΠΎ Π·Π²Π΅Π½ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ Π²Ρ‚ΠΎΡ€Ρ‹ΠΌ ΠΏΠΎ ΡΡ‡Ρ‘Ρ‚Ρƒ, становится Π·Π°Π³Π»Π°Π²Π½Ρ‹ΠΌ}

X := Vsp^.Inf; {Π—Π°Π±ΠΈΡ€Π°Π΅ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· ΡƒΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ Π·Π²Π΅Π½Π°}

Dispose (Vsp); {Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°Π΅ΠΌ Π·Π²Π΅Π½ΠΎ}

End;

3. Π”ΠΎΠ±Π°Π²Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° Π² ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ΅ мСсто списка, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ΅ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° (послС Π·Π²Π΅Π½Π°, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Π΄Π°Π½)

{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° добавлСния Π·Π²Π΅Π½Π° Π² ΡΠΏΠΈΡΠΎΠΊ послС Π·Π²Π΅Π½Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ссылаСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Pred;

Π² x ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ся информация для добавлСния}

Procedure V_Spisok (Pred: U; X: BT);

Var Vsp: U;

Begin

New (Vsp); {Π‘ΠΎΠ·Π΄Π°Π΅ΠΌ пустоС Π·Π²Π΅Π½ΠΎ}

Vsp^.Inf := X; {Заносим ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ}

Vsp^.Next := Pred^.Next; {Π’Π΅ΠΏΠ΅Ρ€ΡŒ это Π·Π²Π΅Π½ΠΎ ссылаСтся Π½Π° Ρ‚ΠΎ, Ρ‡Ρ‚ΠΎ Π±Ρ‹Π»ΠΎ слСдом Π·Π° Π·Π²Π΅Π½ΠΎΠΌ Pred}

Pred^.Next := Vsp; {Π’Π΅ΠΏΠ΅Ρ€ΡŒ Π½ΠΎΠ²ΠΎΠ΅ Π·Π²Π΅Π½ΠΎ встало вслСд Π·Π° Π·Π²Π΅Π½ΠΎΠΌ Pred}

End;

4. Π£Π΄Π°Π»Π΅Π½ΠΈΠ΅ Π·Π²Π΅Π½Π° ΠΈΠ· ΠΏΡ€ΠΎΠΈΠ·Π²ΠΎΠ»ΡŒΠ½ΠΎΠ³ΠΎ мСста списка, ΠΎΡ‚Π»ΠΈΡ‡Π½ΠΎΠ³ΠΎ ΠΎΡ‚ Π½Π°Ρ‡Π°Π»Π° (послС Π·Π²Π΅Π½Π°, ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ Π·Π°Π΄Π°Π½)

{ΠŸΡ€ΠΎΡ†Π΅Π΄ΡƒΡ€Π° удалСния Π·Π²Π΅Π½Π° ΠΈΠ· ΡΠΏΠΈΡΠΊΠ° послС Π·Π²Π΅Π½Π°, Π½Π° ΠΊΠΎΡ‚ΠΎΡ€ΠΎΠ΅ ссылаСтся ΡƒΠΊΠ°Π·Π°Ρ‚Π΅Π»ΡŒ Pred;

Π² x ΡΠΎΠ΄Π΅Ρ€ΠΆΠΈΡ‚ся информация ΠΈΠ· ΡƒΠ΄Π°Π»Ρ‘Π½Π½ΠΎΠ³ΠΎ Π·Π²Π΅Π½Π°}

Procedure Iz_Spiska (Pred: U; Var X: BT);

Var Vsp: U;

Begin

Vsp := Pred^.Next; {Π—Π°Π±ΠΈΡ€Π°Π΅ΠΌ ссылку Π½Π° ΡƒΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠ΅ Π·Π²Π΅Π½ΠΎ}

{УдаляСм Π·Π²Π΅Π½ΠΎ ΠΈΠ· ΡΠΏΠΈΡΠΊΠ°, ΠΏΠ΅Ρ€Π΅Π½Π°ΠΏΡ€Π°Π²ΠΈΠ² ссылку Π½Π° ΡΠ»Π΅Π΄ΡƒΡŽΡ‰Π΅Π΅ Π·Π° Π½ΠΈΠΌ Π·Π²Π΅Π½ΠΎ}

Pred^.Next := Pred^.Next^.Next;

X := Vsp^.Inf; {Π—Π°Π±ΠΈΡ€Π°Π΅ΠΌ ΠΈΠ½Ρ„ΠΎΡ€ΠΌΠ°Ρ†ΠΈΡŽ ΠΈΠ· ΡƒΠ΄Π°Π»ΡΠ΅ΠΌΠΎΠ³ΠΎ Π·Π²Π΅Π½Π°}

Dispose (Vsp); {Π£Π½ΠΈΡ‡Ρ‚ΠΎΠΆΠ°Π΅ΠΌ Π·Π²Π΅Π½ΠΎ}

End;

ΠŸΡ€ΠΈΠ²Π΅Π΄Ρ‘ΠΌ ΠΏΠΎΠ»Π½Ρ‹ΠΉ тСкст модуля.

{Π―Π·Ρ‹ΠΊ Pascal}

Unit Spisok;

Interface

Type BT = LongInt;

U = ^Zveno;

Zveno = Record Inf: BT; Next: U End;

Procedure V_Nachalo (Var First: U; X: BT);

Procedure Iz_Nachala (Var First: U; Var X: BT);

Procedure V_Spisok (Pred: U; X: BT);

Procedure Iz_Spiska (Pred: U; Var X: BT);

Procedure Ochistka (Var First: U);

Function Pust (First: U): Boolean;

Procedure Print (First: U);

Implementation

Procedure V_Nachalo;

Var Vsp: U;

Begin

New (Vsp);

Vsp^.Inf := X;

Vsp^.Next := First;

First := Vsp;

End;

Procedure Iz_Nachala;

Var Vsp: U;

Begin

Vsp := First;

First := First^.Next;

X := Vsp^.Inf;

Dispose (Vsp);

End;

Procedure V_Spisok;

Var Vsp: U;

Begin

New (Vsp);

Vsp^.Inf := X;

Vsp^.Next := Pred^.Next;

Pred^.Next := Vsp;

End;

Procedure Iz_Spiska;

Var Vsp: U;

Begin

Vsp := Pred^.Next;

Pred^.Next := Pred^.Next^.Next;

X := Vsp^.Inf;

Dispose (Vsp);

End;

Procedure Ochistka;

Var Vsp: BT;

Begin

While Not Pust (First) Do Iz_Nachala (First, Vsp)

End;

Function Pust;

Begin

Pust := First = Nil

End;

Procedure Print;

Var Vsp: U;

Begin

Vsp := First;

While Vsp <> Nil Do

Begin

Write (Vsp^.Inf: 6);

Vsp := Vsp^.Next

End; WriteLn

End;

Begin

End.

// Π―Π·Ρ‹ΠΊ Π‘++

#include < iostream. h >

#include < conio. h >

#include < stdlib. h >

#include < time. h >

typedef long BT;

struct Zveno{

BT Inf;

Zveno *Next; };

Zveno *V_Nachalo (Zveno *First, BT X)

{Zveno *Vsp;

Vsp = (Zveno *) malloc (sizeof (Zveno));

Vsp->Inf=X; Vsp->Next=First; First=Vsp;

return First;

}

Zveno *Iz_Nachala (Zveno *First)

{Zveno *Vsp;

Vsp=First->Next;

free (First);

return Vsp;

}

Zveno *V_Spisok (Zveno *Pred, BT X)

{Zveno *Vsp;

Vsp = (Zveno *) malloc (sizeof (Zveno));

Vsp->Inf=X;

Vsp->Next=Pred->Next;

Pred->Next=Vsp;

return Vsp;

}

BT Iz_Spiska (Zveno *Pred)

{BT X;

Zveno *Vsp;

Vsp=Pred->Next;

Pred->Next=Pred->Next->Next;

X=Vsp->Inf;

free (Vsp);

return X;

}

void Print (Zveno *First)

{Zveno *Vsp;

Vsp=First;

while (Vsp)

{cout << Vsp->Inf << ' '; Vsp=Vsp->Next;}

cout << «n» ;

}

int Pust (Zveno *First)

{

return !First;

}

Zveno *Ochistka (Zveno *First)

{

while (!Pust (First)) First=Iz_Nachala (First);

return First;

}

ΠŸΠΎΠΊΠ°Π·Π°Ρ‚ΡŒ вСсь тСкст
Π—Π°ΠΏΠΎΠ»Π½ΠΈΡ‚ΡŒ Ρ„ΠΎΡ€ΠΌΡƒ Ρ‚Π΅ΠΊΡƒΡ‰Π΅ΠΉ Ρ€Π°Π±ΠΎΡ‚ΠΎΠΉ