122
мантиқий жиҳатдан ундан кейин келадиган ёзув сақланадиган манзил киритилади. Янги ёзувли
уя манзили эса мантиқан ундан олдинги ёзувнинг кўрсаткичи бўлиб қолади. Янги ёзувларни
жойлаштириш учун исталган бўш уядан фойдаланилиши мумкинлиги учун рўйхатни
чекланмаган тарзда кўпайтириб бориш мумкин ва бунинг учун олдиндан хотирани заҳиралаш
талаб этилмайди.
5.8-расмда мантиқан С ёзувидан кейин келадиган янги киритилган D ёзувли рўйхат
тасвирланган. D ёзув 15 манзилли уяга жойлаштирилади. Кўрсаткичлар алмаштирилгандан сўнг
ёзувларнинг А ёзув, В ёзув, С ёзув, D ёзув, F ёзув мантиқий кетма-кетлигини таъминлайдиган 01,
05, 03, 15 ва 10 хотира уяларини ўқиш тартиби белгиланади.
Бир боғланишли рўйхатни ёпиқ ҳалқа шаклида ташкил этиш мумкин (5.9-расм). Бу ҳолда
биринчи ёзувнинг манзили охирги ёзувнинг кўрсаткичи бўлади. Бундай рўйхат яна
циклик рўйхат
ҳам деб аталади. Циклик рўйхатни исталган уядан бошлаб кўриб чиқа бошлаш мумкин. Кўриб
чиқилган ёзувлар сони рўйхатдаги ёзувлар умумий сонига ёки кўрсаткичнинг биринчи ўқилган уя
манзили билан тўғри келиши кўриб чиқишнинг тугаганлиги шартидир. Охирги ҳолатда
биринчи
ўқилган уя манзили эслаб қолиниши ва ҳар сафар навбатдаги ёзувни ўқишда унинг кўрсаткичи
билан солиштирилиши керак.
5.9-расм. Циклик рўйхат
Маълумотларни боғланган ҳолда тақдим этишдан маълумотларнинг ночизиқий
тузилмаларини сақлаш учун, шунингдек ахборот массивининг энг чегаравий ўлчами олдиндан
номаълум бўлган (демак, хотира ўлчамига талабларни ҳам олдиндан белгилаб бўлмайди); ахборот
массиви тез-тез ўзгартириб туриладиган, маълумотлар устида кўп сонли қўшиш ва ўчириш
операциялари бажариладиган ҳолларда чизиқий тузилмаларни
амалга ошириш учун
фойдаланилади. ЭҲМ хотирасида маълумотларни қандай тақдим этишни танлаш масаласини ҳал
қилишда маълумотларни боғланган тарзда тақдим этиш кўрсаткичлар учун машина хотирасининг
қўшимча сарфланишига олиб келишини ёдда тутиш зарур.
А ёзув
АМ
N
K
M ёзув
АМ
05
K+1
N ёзув
АМ
K
123
Бир қатор вазифаларни бажаришда боғланган рўйхат бўйича ҳар икки йўналишда
ҳаракат қилиш имкониятига эга бўлиш зарур. Бунинг учун рўйхатнинг ҳар бир элементига
қўшимча кўрсаткич киритилади, у рўйхат бўйича тескари йўналишда ҳаракат қилишни
белгилайди. Бундай рўйхат
икки йўналишли деб аталади. Кўрсаткич майдонига мантиқан
ушбу ёзувдан олдин келадиган ёзувли уя манзили киритилади (5.10,а-расм). Бош уя бу
ҳолда рўйхатнинг биринчи ва охирги уяси кўрсаткичларига эга бўлади. Икки йўналишли
рўйхатда излаш ишларини рўйхатнинг ҳам бошидан, ҳам охиридан бошлаш мумкин.
Ёзувларни қўшиш (ўчириш) жараёнида икки боғланишли рўйхатда, 5.10,б-расмда
кўрсатилганидек, тўғри ва тескари кўрсаткичларнинг ўзгариши юз беради.
Тескари
кўрсаткичнинг мавжудлиги кўрсаткичларни ўзгартириш алгоритмини соддалаштириш имконини
беради, чунки ўчирилаётган ёзувнинг тескари кўрсаткичи мантиқан бу ёзувдан олдинги ёзув
уясининг манзилини сақлаб қолади.
Битта боғланишли рўйхатда бу манзилни қўшимча процедуралар ёрдамида аниқлаш зарур.
Икки йўналишли рўйхатдан фойдаланишда ахборот массивларини излаш ва юритиш жараёнлари
тезлашади, лекин кўрсаткичлар учун хотира сарфи ошади.
Маълумотларни боғлиқ ҳолда тақдим этишни амалга ошириш учун дастурлаштириш тили
муайян воситаларга, хусусан «кўрсаткич» типидаги маълумотларга эга бўлиши керак.
«Кўрсаткич» типидаги маълумотларга эга бўлмаган дастурлаштириш тиллари билан ишлашда
маълумотларни боғлиқ ҳолда тақдим этиш массив тузилмаси ёрдамида моделлаштирилади.
Рўйхат боши
кўрсаткичи
Рўйхат охири
кўрсаткичи
А ёзув 01
АМ пр 03
О
05 D ёзув
О
AМ обр 03
03 В ёзув
АМ пр 05
АМ обр 01
Рўйхат боши
кўрсаткичи
Рўйхат охири
кўрсаткичи
01 А ёзув
АМ пр 03
О
03 В ёзув
АМ пр 12
АМ обр 01
05 D ёзув
О
AМ обр 12
12 D ёзув
АМ пр 05
AМ обр 03
5.10-расм. Икки йўналишли рўйхат, а) дастлабки рўйхат,
б)янги ёзув рўёхатига киритиш.
124
Маълумотлар тузилмаси М (I) массив cифатида белгиланган бўлсин. Ёзувлар
жойлашишининг жисмоний тартибига мос келмайдиган массив элементларини ўқиш
тартибини белгилаш учун кўрсаткичларнинг ёрдамчи векторини N(J)
ташкил этиш мумкин,
унинг элементлари – яхлит сонлар – асосий массив ёзувларининг тартиб номерини (индексини)
белгилаб беради. 5.11-расмда иккита бир ўлчамли массив: кўрсаткичлар массиви N(J) ва М(I)
ёзувларнинг асосий массиви, шунингдек моделлаштирилаётган рўйхат акс эттирилган. Асосий
массивни ўқиш процедураси I = N(J) эканлигини ҳисобга олган ҳолда ташкил этилади. Шундай
қилиб N(J) вектор J қиймати 1 дан 4 гача ўзгарганда асосий массивнинг ёзувларини ўқишнинг
қуйидаги тартибини белгилаб беради: А ёзув, В ёзув, С ёзув, D ёзув
. Массив тузилмаси ёрдамида
боғланган ҳолда тақдим этилган маълумотларни моделлаштиришнинг бошқа
усулидан
фойдаланиш мумкин. Бунда массивнинг ҳар бир элементи бир нечта (камида иккита) майдондан
иборат бўлиши керак. Охирги майдон кўрсаткич учун ажратилади. Бу майдоннинг қиймати
(бутун сон) боғланган рўйхатнинг кейинги элементи ҳисобланадиган массив элементининг
индекси ёки номеридан иборат бўлади.
Do'stlaringiz bilan baham: