Microsoft Word 3 V 11 pechatga doc


 Ахборотларни саралаш ва тартиблаш


Download 4.45 Mb.
Pdf ko'rish
bet67/88
Sana14.09.2023
Hajmi4.45 Mb.
#1677503
1   ...   63   64   65   66   67   68   69   70   ...   88
Bog'liq
1 kompyuter savodxonligi

 
9.5. Ахборотларни саралаш ва тартиблаш. 
Маълумотлар омборида ёзувларни тартиблаш. 
Барча зарур ахборотлар компьютерга киритилгач, маълумотлар омборида 
уларни маълум тартибда тартиблаб чиқиш керак бўлади. Бу амал компьютерда 
қандай бажарилиши билан танишиб чиқамиз. Масалан, "кутубхона" маълумотлар 
омборида ахборотлар ўқувчининг коди бўйича, бир ўқувчига тегишли ахборотлар 
эса китоблар коди бўйича тартиблаб чиқилиши керак бўлсин. Бунинг учун 
компьютер маълумотлар омборидаги биринчи ва иккинчи ёзувларни бир-бири билан 
солиштиради ва иккинчи ёзув биринчисидан аввал келиши керак бўлса, уларнинг 
ўрнини алмаштиради. Сўнгра биринчи ёзув билан учинчи ёзувни бир-бири билан 
солиштиради ва, лозим топса, уларнинг ўрнини алмаштиради. Бу жараённи давом 
эттириб, биринчи ёзувни (ёки унинг ўрнига келган ёзувни) навбати билан тўртинчи, 
бешинчи ва ҳоказо охирги ёзув билан солиштиради. Натижада биринчи ёзув ўрнида 
биринчи ўринда туриши керак бўлган ёзув пайдо бўлади.
Шу жараён иккинчи қадамда иккинчи ёзувдан бошлаб такрорланади ва 
иккинчи ёзув ўрнида қолган ёзувлар орасидаги энг аввал туриши керак бўлган ёзув 
пайдо бўлади. Бу жараён учинчи, тўртинчи ва ҳоказо ёзувлар учун такрорланиб, 
бутун омбор тартибланиб чиқилади. Бу усулда тартиблаш анча вақт талаб қилади ва 
ҳозирги пайтда бундан кўра тезроқ ишлайдиган тартиблашлар ҳам ишлатилади. 
Тартиблаш амали бир марта бажарилгач, тартибланган омбордан фойдаланиш 
анча қулай бўлиб, тез бажарилади. Масалан, бирор ёзувни топиш учун тартибланган 
омборда қуйидаги ишлар бажарилади. Омборда 2000 та ёзув бўлсин. Дастур аввал 
уларнинг ўртадагиси – 1000-ёзувни қидирилаётган ёзув билан солиштиради. Бунда 
уч ҳол бўлиши мумкин: 1000-ёзув қидирилаётган ёзув билан бир хил, у ҳолда 
қидириш тўхтатилади. Агар қидирилаётган ёзув 1000-ёзувдан аввал жойлашганлиги 
маълум бўлса, у ҳолда 1-ёзувдан 1000-ёзувгача бўлган оралиқ иккига бўлинади ва 
унинг ўртасидаги 500-ёзув қидирилаётган ёзув билан солиштирилади. Акс ҳолда, 
яъни қидирилаётган ёзув 1000-ёзувдан кейин жойлашган бўлса, 1000- ва 2000-
ёзувлар ўртасига жойлашган 1500-ёзув қидирилаётган ёзув билан солиштирилади.


107
Иккала ҳолда ҳам қидириш оралиғи икки марта қисқарди ва 2000 та ёзувдан 
1000 та ёзувга камайди. Бу амални такрорлаб, кейинги қадамда қидирув 500 та ёзув 
орасида бажарилади. Бу жараён бир неча қадамдан кейин тўхтайди: қидирилаётган 
ва солиштирилаётган ёзувлар бир-бирига тенг бўлади ёки қидириш оралиғи 
узунлиги бирга тенг бўлиб қолади.
Агар қидирилаётган ёзувдан бир нечтаси мавжуд бўлса, у ҳолда аввал улардан 
биринчиси топилади, сўнгра уларнинг нечталиги аниқланади. Юқоридаги қидириш 
амали 2000 та ёзув учун бажарилганда ёзувларни ўзаро солиштиришлар сони 
2000*2001/2
≈1000000 га тенг бўлса, битта ёзувни қидириб топиш амалида 
солиштиришлар кўпи билан log
2
2000=11 та бўлиши мумкин.

Download 4.45 Mb.

Do'stlaringiz bilan baham:
1   ...   63   64   65   66   67   68   69   70   ...   88




Ma'lumotlar bazasi mualliflik huquqi bilan himoyalangan ©fayllar.org 2024
ma'muriyatiga murojaat qiling