Algorithms Basics
Algorithms Basics
aleqsandre gamyreliZe
2
sarCevi
1 Sesavali 5
7 mimarTebebi da dalageba 63
7.1 mimarTebebi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63
7.2 dalagebisa da ekvivalenturobis gamoyenebis magaliTebi: Zebna, operaciebi simravleebze
da naSTTa klasebi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 68
7.3 mokle daskvna . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 69
3
4 sarCevi
Sesavali
Cvens yoveldRiur cxovrebaSi algoriTmebi uaRresad did rols TamaSoben ise, rom Cven amas verc ki
vamCnevT. ufro metic, bevrma arc ki icis, Tu ra aris algoriTmi. ara da algoriTmebi yovel fexis
algoriTmia: marcxena fexi gadadgi win, tani gadaxare odnav win, marjvena fexi gadagi win da es procesi
Tavidan gaimeore manam, sanam siarulis Sewyveta mogindeba. sxvaTa Soris, es centraluri algoriTmia
robototeqnikaSi da dReisaTvis bolomde gadaWrili ar aris -- rogorc aRmoCnda, aseTi erTi SexedviT
monacemebi:
monacemebi: xorci, xaxvi, rehani, qondari, wiTeli wiwaka, pilpili, marili, fqvili, wyali
1. gaakeTe bulioni: Zvlebi Cayare qvabSi, daasxi imdeni wyali, rom daifaros da nel cecexlze aduRe.
roca gasinjav da ukve wyal-wyla aRar iqneba, gadmodgi da gaatare wvril badeSi, rom Zvlebis
3. xorcs daasxi mariliTa da wiwakiT gazavebuli nel-Tbili bulioni da azile. Semdeg kidev daasxi
da azile. es procedura gaimeore manam, sanam bulions ar Seiwovs da Tavze kidev cota ar dadgeba.
5. Semdeg aiRe zustad imdenive bulioni, ramdenic daWirda xorcs da Seurie marili ise, rom simlaSe
7. comidan CamoWeri mogrZo naWeri, TokiviT daamrgvale da daWeri patara naWrebad. es naWrebi cal-
calke gaabrtyele Txel, mrgval diskebad. kovziT aiRe farSi, comis diskebze dade da gaaxvie.
algoriTmi dasrulebulia
5
6 Tavi I Sesavali
zemoT moyvanil xinklis algoriTmSi Semdegi ram aris gasaTvaliswinebeli: Ycomis mozelvisA procesi
Tavis mxriv algoriTmia, romelic periodulad unda gagrZeldes manam, sanam comi sasurvel konsisten-
cias ar miaRwevs (aseTive ram SeiZleba iTqvas xorcis akepvisa da xinklis gaxvevis procedurebzec). ese
igi, aq CarTulia kidev Semowmebis meqanizmi: Tu konsistencia kargia, maSin algoriTmi daasrule. Tu
zogadad, algoriTmi raime amocanis gadaWris gzaa, magram am gadaWrisas unda gaviTvaliswinoT Semdegi
sami punqti:
2. roca algoriTmi erTi bijis Sesrulebas daasrulebs, igi Semdgomi bijis Sesrulebaze unda ga-
davides;
3. bijebi SeiZleba periodulad gameordes, magram saerTo jamSi yoveli algoriTmis bijebis saerTo
Cvens irgvliv Zalian bevri amocana arsebobs: xinklis moxarSvidan dawyebuli da kosmosSi raketebis
gagzavniT damTavrebuli. bunebrivad wamoiWra SekiTxva: SeiZleba Tu ara yvela amocana algoriTmulad
gadaiWras (anu SeiZleba Tu ara yvela amocanisaTvis davweroT algoriTmi, romelic mas amoxsnis)?
rogorc aRmoCnda, arsebobs iseT amocanaTa simravle, romlebsac algoriTmulad ver amovxsniT. ufro
metic -- gacilebiT metia iseTi amocanebi, romlebsac algoriTmulad ver amovxsniT, vidre iseTebi,
romlebsac SeiZleba movugonoT algoriTmi. es ki imas niSnavs, rom adamianis cxovrebaSi gacilebiT
meti ram aris iseTi, romelsac kompiuteri ver amoxsnis, vidre iseTi, romelsac Yxelovnuri inteleqtiA
daZlevs.
rogorc aRmoCnda, algoriTmulad amoxsnad amocanebs Sorisac arsebobs iseTi amocanebi, romelTa
dReisaTvis cnobili algoriTmebiT amoxsnac Zalian did dros moiTxovs, anu umetes SemTxvevebSi Cvens
xelT arsebuli uZlieresi gamomTvleli manqanebiT asobiT aTas wels moandomebda -- bijebis raode-
noba Zalian swrafad izrdeba. magram mTavari aq isaa, rom ar aris cnobili, SeiZleba Tu ara aseTi
rodesac wamoiWreba axali amocana, pirvel rigSi unda davadginoT, SeiZleba Tu ara misi algoriTmu-
lad amoxsna. Tu ar SeiZleba, maSin unda davadginoT, rogor SevcvaloT am amocanis pirobebi ise, rom
igi amoxsnadi gaxdes da, amavdroulad, rac SeiZleba axlos iyos am dasmul amocanasTan.
Tu amocana amoxsnadia, unda davadginoT, SeiZleba Tu ara misi swrafad amoxsna? Tu ar SeiZleba,
maSin unda davadginoT, rogor SevcvaloT am amocanis pirobebi ise, rom igi amoxsnadi gaxdes da, amav-
droulad, rac SeiZleba axlos iyos am dasmul amocanasTan (evristikebis Seqmna) an iseTi swrafi al-
goriTmi SevqmnaT, romelic zustad imave monacemebze da pirobebSi zust pasuxTan miaxlovebul pasuxs
magram Tu swrafi algoriTmis Seqmna SesaZlebelia, rogor SevqmnaT optimaluri algoriTmi, anu iseTi,
mdinaris erT napirze imyofebian adamiani, mgeli, Txa da kombosto (nax. 2.1). adamians aqvs navi, romelSic
eteva mxolod igi da erTi romelime sxva mgzavri: mgeli, Txa an kombosto.
nax. 2.1:
sanam adamiani sxva cxovelebtan erTadaa napirze, isini kargad iqcevian da erTmaneTs ar daerevian.
magram sakmarisia man marto datovos erT napirze Txa da mgeli, rom es ukanaskneli Txas etakeba. TviT
7
8 Tavi II algoriTmebis martivi magaliTebi
amocana mdgomareobs SemdegSi: dawereT algoriTmi, romlis meSveobiTac adamiani Tavisi naviT samives
pirvel rigSi unda CamovayaliboT amocana: mocemuloba, saboloo Sedegi da algoriTmis msvlelobisas
dadebuli SezRudvebi.
mocemulia: mdinare da mis erT napirze myofi navi, adamiani, mgeli, Txa da kombosto (nax. 2.1 marcxniv).
SezRudva: cxovelebi gadahyavs adamians or adgiliani naviT (pirveli SezRudva -- navSi unda ijdes
adamiani, romelsac mxolod erTi adgili rCeba Tavisufali da, aqedan gamomdinare, meore napirze erT
jerze SeuZlia gadaiyvanos an mxolod mgeli, an mxolod Txa, an mxolod kombosto). mglisa da ku-
dRlis marto datoveba ar SeiZleba, aseve ar SeiZleba Txisa da kombostos marto datoveba (meore da
mesame SezRudva).
am amocanis amosaxsnelad SeiZleba gamoviyenoT Semdegi algoriTmi, romlis yoveli bijis warmodge-
nilia nax. 2.3-Si (davuSvaT, rom dasawyisSi yvela mdinaris marcxena napirzea da bolos marjvena napirze
unda iyos):
monacemebi: mdinare da mis marcxena napirze adamiani, navi, mgeli, Txa da kombosto;
algoriTmi dasrulebulia
pirvel rigSi unda davamtkicoT am algoriTmis siswore: rom misi sawyisi monacemebiT gaSvebisas sasurveli
Sedegi miiReba da rom am algoriTmis msvlelobisas amocanis arc erTi piroba ar irRveva (ar xdeba
savarjiSo 1.1: daamtkiceT am algoriTmis siswore (aCveneT, rom Sedegad miiReba is, rac moeTxoveba da
arc erTi bijis Catarebis Semdeg amocanis piroba Tavisi SezRudvebiT ar irRveva).
Semdeg unda gamoviTvaloT misi siswrafe, anu ramden bijs andomebs igi dasawyisidan gaCerebamde. cxa-
dia, rom aq unda ganvsazRvroT, Tu ras niSnavs YerTi bijiA. Cvens SemTxvevaSi es mdinaris gadakveTa
SeiZleba iyos, anu algoriTmi imden bijs saWiroebs, ramdenjerac gadalaxavs adamiani mdinares (ar
rogorc wesi, yoveldRiuri amocanis dasmisas didi informacia ar aris mniSvnelovani. magaliTad,
ar aris saintereso, Tu ra formisa an siganisaa mdinare, ra ferisaa navi da a.S. Cven gvainteresebs
mxolod is informacia, romelic amocanis pirobisTvisaa mniSvnelovani. magaliTad is, rom erT jerze
mxolod ori mgzavri eteva navSi da erT-erTi mgzavri aucileblad adamiania. Tu Cven marcxena napirs
davarqmevT A, xolo marjvenas ki B , es ori napiri SegviZlia gamovsaxoT ori simravliT, romelsac
agreTve simravle A da simravle B ewodeba. yovel cxovels SevusabamebT erT asos -- adamiani ⇒ a,
maSin sawyisi da saboloo pirobebi Semdegnairi iqneba A={ m,T,k,a }, B = ∅ da, Sesabamisad, A = ∅, B =
{ m,T,k,a } (nax. 2.5). maTematikur enaze ki dasmuli amocanis piroba ase SeiZleba Camoyalibdes:
SezRudva: yovel jerze im simravlidan, romelic Seicavs asos YaA, meore simravleSi unda gadavitanoT
es aso da kidev erTi an nuli aso. is simravle, romelic ar Seicavs asos YaA, ar unda Seicavdes erTad
amocanis piroba odnav gamartivdeba, Tu asoebis nacvlad garkveul ricxvebs aviRebT: adamiani ⇒ 10,
A B
A B
a m T k
A B A B
m T k m T k
a a
mgeli ⇒ 1, Txa ⇒ 2 da kombosto ⇒ 3. maSin Txa da kombosto an Txisa da mglis erT napirze yofna imas
niSnavs, rom Sesabamisi simravlis elementebis jami kentia, xolo is faqti, rom adamiani romeliRaca
napirze ar imyofeba, imas niSnavs, rom Sesabamisi elementebis jami naklebia 10-ze.
savarjiSo 1.4: wina savarjiSoSi Camoyalibebuli amocanisaTvis dawereT algoriTmi da misi yoveli
savarjiSo 1.5: daamtkiceT wina savarjiSoSi dawerili algoriTmis siswore da daiTvaleT misi bijebis
raodenoba.
monacemebi: mdinare da mis marcxena napirze adamiani, navi, mgeli, Txa da kombosto;
algoriTmi dasrulebulia
miviRebT Tu ara am algoriTmis muSaobis Semdeg im Sedegs, romelic amocanaSia moTxovnili? aris Tu
SeniSvna: aqamde Cven ganvixilavdiT SemTxvevas, rodesac dasawyisSi yvela marcxena napirze dgas. zus-
tad igive msjelobis Catareba SeiZleba im SemTxvevisaTvis, rodesac yvela marjvena napirze dgas.
CamovTvliT cxovelebs mocemulobaSi. es yovelTvis ase araa, rogorc Semdegi martivi magaliTi gvi-
Cvenebs:
pirveli ricxvi
mocemulia ori ricxvi. gamoiTvaleT .
meore ricxvi
cxadia, rom aq gadamwyveti mniSvneloba aqvs amocanis pirobaSi mocemuli ricxvebis Tanmimdevrobas.
savarjiSo 1.7: ganvixiloT n mTeli ricxvis zrdadobiT dalagebis amocana. ra aris am amocanaSi mo-
savarjiSo 1.8: moiyvaneT Semdegi amocanis algoriTmi: mocemuli 10 cali mTeli ricxvisaTvis daiT-
valeT kent ricxvTa jami. miniSneba: yovel bijze unda SevamowmoT, aris Tu ara mocemuli ricxvi kenti.
ramden bijs moiTxovs aseTi lgoriTmi? ricxvis kentobis Semowmeba da mimatebis operacia TiTo-TiTo
bijad CaTvaleT.
pirvel TavSi Cven ganvixileT martivi amocanebis amoxsnis gzebi, ris magaliTzec vaCveneT amocanis
dasmisa da misi algoriTmebis, anu amocanis gadasaWrelad saWiro bijebis CamonaTvalis Sedgenis gza.
amocanis Camosayalibeblad saWiroa misi monacemebisa da Sedegis mkafiod CamoTvla (ra aris sawyisi
viTareba da ra unda miviRoT Sedegad), aseve is SezRudvebi, romlebic unda gaviTvaliswinoT amocanis
algoriTmis Sedgenis Semdeg unda davamtkicoT misi siswore: rom yovel dasaSveb sawyis monacemze
Sesabamisi swori pasuxi miiReba da rom algoriTmis arc erTi bijis Semdeg SezRudva ar irRveva.
bolos - algoriTmis SefasebisTvis - unda gamoviTvaloT misi bijebis raodenoba, rom davadginoT, Tu
ramdenad swrafia Cveni meTodi. aRsaniSnavia, rom yovel aseT dros unda ganisazRvros, Tu ras niSnavs
YerTi bijiA: erTsa da imave algoriTmSi es sxvadasxva ram SeiZleba iyos, Tumca erTi biji realurad
saintereso martivi moqmedeba unda iyos. ase, magaliTad,cxovelebis gadayvanis algoriTmSi erT bijad
SeiZleboda adamianis mier navis niCbis mosmis raodenoba agveRo, magram es uinteresod martivi operacia
amocana: ori didi xnis unaxavi maTematikosi erTmaneTs xvdeba. erTi eubneba: me sami Svili myavs. erT
meore eubneba: ver gamovicnob, damatebiT sxva piroba mWirdeba. pirveli etyvis: maTi asakis jami Sens
win mdebare saxlis fanjrebis raodenobis tolia. meore Sexedavs saxls da etyvis: erTi damatebiTi
pirveli etyvis: ufross lurji Tvalebi aqvs. amiT meore samives asaks gamoicnobs.
aRwera
mocemulia: viwro mdinare patara yureTi. mdinareSi yures marcxniv grZeli Savi navi da marjvniv -
Sedegi: mdinareSi yures marcxniv mokle TeTri navi da marjvniv - grZeli Savi navi (navebma erTmaneTs
SezRudva: mdinare imdenad viwroa, rom siganeSi mxolod erTi navi eteva. yureSi eteva mxolod TeTri
nax. 3.1:
imisaTvis, rom erTma TeTrma navma Savs gverdi auqcios, saWiroa Semdegi algoriTmis Catareba:
algoriTmi dasrulebulia
13
14 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
advili saCvenebelia, rom es algoriTmi amocanis saboloo Sedegs mogvcems da misi arc erTi biji
nax. 3.2:
zemoT moyvanili algoriTmi aRvniSnoT rogorc A1 . ese igi, Tu zemoT moyvanil sawyis pirobaze Ca-
axla ki ganvixiloT iseTi SemTxveva, rodesac yures marjvniv ara erTi, aramed ori navia ganTavsebuli.
nax. 3.3-Si grafikuladaa naCvenebi am amocanis monacemi da Sedegi. am amocanas Cven vuwodebT Yori naviA.
nax. 3.3:
Tu pirvel rigSi CavatarebT igive sam bijs, rac algoriTmSi A1 , miviRebT iseT situacias, rogoric
naCvenebia nax. 3.4-Si (marcxniv). Semdeg, Tu Savi navi wava ukan yures marcxniv, Seiqmneba iseTive situacia,
nax. 3.4:
Savi navis ukan gasvlis procesi aRvniSnoT rogorc U . ese igi, Tu sawyisi mdgomareobaa iseTi, ro-
gorc nax. 3.3-Si marcxniv da jer CavatarebT algoriTms A1 , miviRebT iseT viTarebas, rogorc nax. 3.4-Si
marcxniv. Tu Semdeg kidev CavatarebT algoriTms U, miviRebT iseT viTarebas, rogorc nax. 3.4-Si mar-
jvniv. aRsaniSnavia, rom am SemTxvevaSi Seiqmna iseTive viTareba, rogorc amocanaSi YerTi naviA. es ki
ase rom, algoriTmi A2 , romelic amocanas Yori naviA xsnis, Semdegnairad SeiZleba Caiweros: A2 =
A1 , U, A1 (jer Caatare algoriTmi A1 , Semdeg algoriTmi U da bolos isev algoriTmi A1 .
axla ki davuSvaT, rom algoriTmi An n TeTri navis gverdis aqcevas axerxebs (nax. 3.5). aqamde Cven
ganvixileT, Tu rogoria An , Tu n = 1, an n = 2.
Tu ganvixilavT n+1 navis gverdis aqcevis amocanas iseTi sawyisi da saboloo mdgomareobebiT, rom-
lebic naCvenebia nax. 3.6-Si (zemoT) da CavatarebT algoriTmebs A1 , U , miviRebT iseT situacias, romelic
gvqonda n navis gverdis aqcevis amocanaSi (nax. 3.6 qvemoT).
3.1 amocana navebis Sesaxeb 15
nax. 3.5:
nax. 3.6:
es ki imas niSnavs, rom An algoriTmis gamoyenebis Semdeg miiReba saboloo mdgomareoba (nax. 3.6 zemoT
marjvniv).
sabolood miviRebT Semdeg Canawers: An+1 = A1 , U, An . Tu viciT, rogoria algoriTmi A1 , advili gamosaTvlelia
algoriTmi A2 (aq n+1 = 2 n = 1): jer CavatarebT algoriTms A1 , Semdeg U da Semdeg iseve A1 .
da
A3 algoriTmis Casatareblad jer unda CavataroT A1 , Semdeg U da Semdeg A2 . ase nabij-nabij Sei-
Zleba gamoviTvaloT An nebismieri naturaluri n ricxvisaTvis: An = A1 , U, An−1 = A1 , U, A1 , U, An−2 =
A1 , U, A1 , U, A1 , U, An−2 = A1 , U, A1 , U, · · · , A1 (n-jer).
mniSvnelovania is faqti, rom algoriTmi An iyenebs YTavis TavsA, mxolod ufro dabali parametriT
(mag. A2 = A1 , U, A1 ; A7 = A1 , U, A6 da a.S.)
im SemTxvevaSi, rodesac algoriTmi Tavis Tavs iyenebs, mas YrekursiuliA ewodeba. ese igi, An = A1 , U, An−1
algoriTmis es Canaweri rekursiulia.
aRsaniSnavia isic, rom nebismieri rekursiuli algoriTmi SeiZleba ararekursiuli saxiTac Caiweros
1: gaimeore n-jer:
2: {
3: TeTri navi Sevides yureSi;
7: }
algoriTmi dasrulebulia
iteraciuli algoriTmis im nawils, romelic ramodenimejer meordeba, cikli, kolo ciklSi moqceul
savarjiSo 1.3: rogor unda Seicvalos algoriTmi, rom misi bijebis raodenoba gaxdes 4n − 1?
16 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
mocemulia: sami Zeli A, B , C . A Zelze Camocmulia sxvadasxva zomis n rgoli ise, rom did rgols ufro
patara adevs -- Seqmnilia piramida (nax. 3.7 (a)).
SezRudva: TiTo jerze erTi Zelidan meoreze unda gadavitanoT erTi da mxolod erTi rgoli, romelic
yvelaze maRla devs. amave dros ar SeiZleba patara zomis rgolze didi zomis rgolis dadeba.
davuSvaT, mocemulia erT rgoliani piramida. cxadia, rom misi erTi Zelidan meoreze gadasatanad
sakmarisia erTi moqmedeba. Tu es erTi rgoli A Zelidan C Zelze gadagvaqvs, am proceduras vuwodebT
AA,C
1 .
imisaTvis, rom or rgoliani piramida A Zelidan C Zelze gadavitanoT, saWiroa Semdegi moqmedebebis
Catareba:
or rgoliani piramidis A Zelidan C Zelze gadatanis algoriTmi (anu zemoT moyvanili sam bijiani
zogadad, n rgolis erTi Zelidan meoreze gadatanis algoriTmi Semdegnairad SeiZleba aRiniSnos:
C,A
AX
n
1 ,X2
aq n ∈ N, X1 , X2 ∈ {A, B, C} da X1 6= X2 . amrigad, A
.
13 niSnavs algoriTms, romelic C Zelze
B,A
awyobil 13 rgolian piramidas A Zelze gadaitans, xolo A
108 ki im algoriTms, romelic B Zelze
awyobil 108 rgolian piramidas A Zelze gadaitans.
Tu viciT, rogor gadavitanoT or rgoliani piramida erTi Zelidan meoreze, advilad SevadgenT algo-
riTms AA,C
3 :
sam rgoliani piramida ganvixiloT, rogorc qveda did rgolze dadgmuli or rgoliani piramida (nax.
3.12 (a) ).
amrigad, AA,B
2 algoriTmiT SeiZleba zeda or rgoliani piramidis gadatana B Zelze (nax. 3.12 (b) ),
Semdeg AA,C
1 algoriTmiT qveda rgoli gadagvaqvs A Zelidan C Zelze (nax. 3.12 (g) ) da bolos iseve AB,C
2
algoriTmiT or rgoliani piramida gadagvaqvs B Zelidan C Zelze (nax. 3.12 (d) ).
18 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
AA,B
2 , Semdeg AA,C
1 da amis Semdeg AB,C
2 .
Canaweri AA,C
3 ).
Tu viciT, rogor gadavitanoT 3 rgoliani piramida erTi Zelidan meoreze, rekursiulad SeiZleba
AX
4
1 ,X2
algoriTmis dadgena. mag., AA,C
4 = [AA,B
3 , AA,C
1 , AB,C
3 ].
Canaweri AA,C
3 ).
Tu viciT, rogoria n rgoliani piramidis erTi Zelidan meoreze gadatanis algoriTmi AnX1 ,X2 , advilad
X1 ,X2
SevadgenT n + 1 rgoliani algoriTmis gadatanis algoriTms An+1 (Sesabamisi moqmedebebi naCvenebia
AX 1 ,X2
n+1 = [AX
n
1 ,X3
, AX
1
1 ,X2
, AnX3 ,X2 ], X1 6= X2 6= X3 , X1 , X2 , X3 ∈ {A, B, C}.
rogorc yvela wina magaliTSi, aqac n cali rgolis gadatana erTdrouladaa naCvenebi imis da miuxe-
davad, rom AX
n
1 ,X2
ramodenime bijisagan Sedgeba.
ganvixileT da mas Tanmimdevrulad SevasrulebT, amocanis piroba ar irRveva: pirvel rigSi unda Ses-
ruldes AA,B
2 (nax. 3.12 (a) ). es SesaZlebelia, radgan B da C Zelebi carielia da A Zelze qvemoT yvelaze
didi rgoli devs, romelzec pirobis Tanaxmad sxva nebismieri rgolis dadeba SeiZleba. ase rom, am
3.2 hanois koSkebis amocana 19
operaciebis Sesrulebis dros amocanis piroba ar dairRveva. Sedegad miviRebT A Zelze erT yvelaze
did rgols da B Zelze ki or rgolian piramidas (nax. 3.12 (b) ). Semdeg unda CavataroT AA,C
1 . esec ar
arRvevs amocanis pirobas, radgan am momentisaTvis C Zeli carielia. Sedegad miviRebT C Zelze erT
yvelaze did rgols da B Zelze ki or rgolian piramidas, xolo A Zeli ki carieli iqneba (nax. 3.12 (g) ).
bolos unda SevasruloT AB,C
2 . esec SesaZlebelia, radgan A Zeli carielia da C Zelze yvelaze didi
rgoli devs, romelzedac yvela danarCeni rgolis dadeba SeiZleba. am operaciebis Catarebis Sedegad
2: {
3: minimaluri zomis rgoli gadaitane erTi poziciiT marjvniv (an C Zelidan A Zelze);
4: araminimaluri zomis rgoli gadaitane SeZlebisamebr (aq mxolod erTi varianti iarsebebs)
5: }
algoriTmi dasrulebulia
unda aRiniSnos, rom imis miuxedavad, rom warmodgenili iteraciuli algoriTmi martivad aRiwereba,
aseve rTulia am algoriTmis bijebis raodenobis daTvla, radgan arc ise cxadia, rodis Sewydeba cikli
savarjiSo 2.8: romel Zelze gadaitans zemoT aRwerili algoriTmi 3, 4, 5 da 6 rgolian piramidas?
zogadad, romel Zelze gadaitans luwi raodenobis rgolian piramidas? da kenti raodenobis rgolebian
piramidas?
20 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
antikur saberZneTSi dasves e.w. YfargliTa da saxazaviT agebisA geometriuli amocanebi. aRsaniSnavia,
rom ramodenime amocana 2000 welze met xans amouxsneli rCeboda, sanam XIX saukuneSi maTematikurad
ar damtkicda, rom maTi algoriTmuli gadaWra SeuZlebelia. es, albaT, yvelaze Zveli amocanebia,
romelTac algoriTmuli amoxsna ar aqvT (Tumca unda aRiniSnos, rom laparakia agebaze mxolod far-
glisa da saxazavis gamoyenebiT, rac igive amocanaTa sxva meTodebiT gadaWras ar gamoricxavs. sxva
sityvebiT rom vTqvaT, es amocanebi resursebis SezRudvisas ver gadaiWreba, magram resursebis SezRud-
Sedegi: mocemuli geometriuli figurisTvisa an ricxvisTvis daadgineT, SeiZleba Tu ara maTi far-
ori wertili A, B da nebismieri mesame wertili O, fargliT SeiZleba O wertilidan |A, B| sigrZis
Tu mocemulia ukve agebul wertilTa raime simravle S = {A1 , A2 , ..., An }, am simravlis ramodenime wer-
tilze gavlebuli Sekruli texilis mier Semofargluli sibrtyis nawils (Tavisi SigTavsiT) far-
• ∀ yoveli, nebismieri;
• ∃ arsebobs;
• ∈ ekuTvnis;
• ⇒ gamomdinareobs
raime geometriuli figura iTvleba agebulad, Tu fargliTa da saxazaviT zemoT aRwerili wesebis
dacviT aigeba iseTi simravle S, rom masSi moiZebnos iseTi wertilebi, romelTa texilebiT SeerTeba
raime ricxvi ξ iTvleba agebulad, Tu fargliTa da saxazaviT zemoT aRwerili wesebis dacviT aigeba
iseTi simravle S, rom masSi moiZebnos ori wertili, romelTa Soris manZilia ξ.
dasawyisisaTvis mocemulia ori wertili A0 da B0, romelTa Soris manZili erTis toladaa miCneuli:
0 0
|A , B | = 1. sxva sityvebiT rom vTqvaT, agebulia ricxvi 1. imisaTvis, rom avagoT ricxvi 2 (anu farglisa
da saxazavis meSveobiT avagoT iseTi wertilebi, romelTa Soris manZili oris tolia), Semdegi al-
es algoriTmi aRvniSnoT rogorc N. Tu misi monacemebia A da B wertilebi, N (A, B) = (A, C). advili
• P1 = (A, B);
• Pn = N (Pn−1 ).
savarjiSo 3.1: mocemulia oTxi wertili A, B, C, D. ra algoriTmiT SeiZleba |A, B| + |C, D| sigrZis mona-
kveTis ageba? gamoiTvaleT am algoriTmis bijebis raodenoba da daamtkiceT misi siswore.
22 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
savarjiSo 3.2: mocemulia ori wertili A, B , sadac |A, B| > 1. SeadgineT algoriTmi, romelic |A, B| − 1
sigrZis monakveTs aagebs. gamoiTvaleT am algoriTmis bijebis raodenoba da daamtkiceT misi siswore.
Tu mocemulia ori wertili A da B, advilad SeiZleba [A, B] monakveTis Sua perpendikularuli wrfis
ageba, anu iseTi ori wertilis ageba, romlebze gamavali wrfec am monakveTis perpendikularulia da mis
Sua wertilze gadis (cxadia, rom igive algoriTmiT SeiZleba amave monakveTis Sua wertilis dadgena):
savarjiSo 3.3: aCveneT, rom wina algoriTmiT miRebul C da K wertilebze gavlebuli wrfe [A, B] mona-
es algoriTmi aRvniSnoT rogorc P (A, B). amrigad, P (A, B) = (C, K), sadac K [A, B] monakveTis Sua
wertilia.
Tu mocemulia ori wertili A da B da erTi wertili C , romelic ar mdebareobs (A, B) wrfeze, maSin
SeiZleba C wertilidan (A, B) wrfeze perpendikularuli wrfis daSveba, anu iseTi D wertilis ageba
mocemulia: ori wertili A da B da erTi wertili C, romelic ar devs (A, B) wrfeze (nax. 3.17 (a) ).
Sedegi: ori wertili K da T, romelTagan T devs (A, B) wrfeze (nax. 3.17 (g) ).
savarjiSo 3.4: zemoT moyvanil algoriTmSi A da L wertilebze unda CavataroT P (A, L) algoriTmi.
savarjiSo 3.5: ra moxdeba, Tu C wertilSi |A, C| radiusiT gavlebuli wrewiri (A, B) wrfes mxolod
savarjiSo 3.6: zemoT moyvanil algoriTmSi, P (A, L) algoriTmis Sesrulebis Semdeg, ratom miiReba ori
damatebiTi wertili K da T?
savarjiSo 3.8: mocemulia erT wrfeze myofi sami wertili A, B da maT Soris mdebare C. ra algoriTmiT
savarjiSo 3.9: mocemulia ori wertili A da B da erTi wertili C , romelic ar devs (A, B) wrfeze.
ra algoriTmiT SeiZleba C wertilidan (A, B) wrfis paraleluri wrfis ageba (anu iseTi D wertilis
ageba, rom (C, D) wrfe (A, B) wrfis paraleluri iyos)?
Tu agebulia ori ricxvi a1 , a2 ∈ N, anu A1 , A2 , A3 , A4 iseTi, rom |A1 , A2 | = a1 da |A3 , A4 | = a2 , maSin SeiZleba
iseTi ori B1 , B2 wertilis ageba fargliTa da saxazaviT, rom |B1 , B2 | = a1 · a2 :
Sedegi: (A1 , A2 ) wrfis perpendikularul wrfeze mdebare wertili E, sadac |A1 , E| = 1 (nax. 3.18 (b)
).
24 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
Sedegi: (A1 , A2 ) wrfis perpendikularul wrfeze mdebare wertili F, sadac |A1 , F | = |A3 , A4 | (nax.
3.18 (b) ).
a1
analogiurad SeiZleba
a2 sigrZis monakveTis ageba, Tu mocemulia oTxi wertili A1 , A2 , A3 , A4 , sadac
|A1 , A2 | = a1 da |A3 , A4 | = a2 .
Sedegi: (A1 , A2 ) wrfis perpendikularul wrfeze mdebare wertili E, sadac |A1 , E| = 1 (nax. 3.19 (b)
) .
Sedegi: (A1 , A2 ) wrfis perpendikularul wrfeze mdebare wertili F, sadac |A1 , F | = |A3 , A4 | (nax.
3.19 (b) ).
3.3 Zveli berZnuli amocanebi 25
|A1 ,A2 |
nax. 3.19: sigrZis monakveTis agebis procesi
|A1 ,F |
a1
savarjiSo 3.12: samkuTxedebis msgavsebiT daamtkiceT, rom |A1 , K| = a2 .
amrigad Cven gvaqvs nebismieri racionaluri ricxvis agebis meTodi, anu fargliTa da saxazaviT mTlianad
bunebrivia Semdegi SekiTxva: SeiZleba Tu ara iracionaluri ricxvebis ageba fargliTa da saxazaviT?
√
pirveli aseTi ricxvi aris 2, romelic piTagoras Teoremaze dayrdnobiT aigeba:
savarjiSo 3.13: daxazeT zemoT moyvanili algoriTmis diagramebi ise, rogorc es wina algoriTmebisTvis
iyo naCvenebi.
√
savarjiSo 3.14: daamtkiceT, rom |A2 , E| = 2, Tu |A1 , A2 | = 1.
√
am algoriTms vuwodoT
√ S . ese igi, Tu mocemulia ori wertili A, B ise, rom |A, B| = a, maSin S(A, B) =
(B, C), sadac |B, C| = a + 1.
26 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
• Tu n > 1:
gauSvi algoriTmi S(H(n − 1)).
savarjiSo 3.15: zemoT moyvanili algoriTmebis safuZvelze SeadgineT algoriTmi, romelic fesvs nebis-
mieri racionaluri ricxvidan gamoiangariSebs.
• A1 wertilis marcxniv (A1 , A2 ) wrfeze gadazome erTis toli monakveTi da miRebuli wertili iyos
B , anu |B, A1 | = 1 (nax. 3.20 (b) );
• Semoavle wrewiri diametriT [B, A2 ] (nax. 3.20 (g) );
p
nax. 3.20: |A1 , A2 | sigrZis monakveTis agebis procesi
p √
savarjiSo 3.16: samkuTxedebis msgavsebiT daamtkiceT, rom |A1 , P | = |A1 , A2 | = ξ.
savarjiSo 3.17: mocemulia ori wertili A da B . ra algoriTmiT SeiZleba wrewiris Semovleba, romlis
savarjiSo 3.18: mocemulia sami wertili O, A da B . O wertilidan gamodis ori sxivi [O, A[ da [O, B[, ro-
melic O wertilSi qmnis kuTxes α. dawereT algoriTmi, romelic O, A da B monacemze pasuxad mogvcems
antikuri amocanebi:
• wris kvadratura: mocemulia O wertili da mis garSemo Semovlebuli wrewiri radiusiT 1. cxadia,
rom am wris farTobi iqneba π . SeiZleba Tu ara igive farTobis kvadratis ageba mxolod farglisa
da saxazavis gamoyenebiT?
3.4 mokle daskvna 27
• mesame xarisxis fesvi: mocemulia ori wertili, romelTa Soris manZilia a. SeiZleba Tu ara mxo-
√
lod fargliTa da saxazaviT iseTi ori wertilis ageba, romelTa Soris manZilia
3
a ?
• sammagi biseqtrisa: mocemulia sami wertili O, A da B . O wertilidan gamodis ori sxivi [O, A[
da [O, B[, romelic O wertilSi qmnis kuTxes α. SeiZleba Tu ara mxolod farglisa da saxazavis
gamoyenebiT avagoT iseTi wertili C, rom ∠ AOC = α3 ?
rogorc aRmoCnda, pirveli sami amocana amouxsnadia: ar arsebobs iseTi algoriTmi, romelic mxolod
farglisa da saxazavis meSveobiT aagebs or wertils, romelTa Soris manZilia π; an iseTi algoriTmi,
romelic nebismieri a ricxvidan mesame xarisxis fesvs amoiRebs an iseTi algoriTmi, romelic nebis-
mier kuTxes samad gayofs (ise, rogorc is algoriTmi, romelic nebismieri ricxvidan kvadratul fesvs
axali wertilis ageba SeiZleba mxolod rogorc ukve agebul wertilebze gavlebuli ori wrfis, ori
wrewirisa an erTi wrewirisa da erTi wrfis gadakveTis wertilisa. Tu avagebT ori geometriuli fi-
guris gadakveTis wertils, maSin misi daSoreba koordinatTa saTavidan gamoiTvleba Semdegi poli-
n n
−1
nomiuri gantolebis amonaxsniT: a2n x2 + a2n −1 x2 + · · · + a1 x + a0 = 0, sadac n raRaca naturaluri
ricxvia.
√
radgan
3
a ar aris aseTi saxis polinomis (anu oris xarisxis rigis polinomis) amonaxsni, amitom am
anu igi ar aris aranairi polinomiuri gantolebis amonaxsni da miT umetes ver iqneba oris xarisxis
rigis gantolebis amonaxsni, riTac mtkicdeba, rom fargliTa da saxazaviT π ricxvis ageba SeuZlebe-
lia.
magram arsebobs formula, romelic gveubneba, Tu ramden kuTxa wesieri mravalkuTxedis ageba SeiZleba
mxolod farglisa da saxazavis gamoyenebiT: n kuTxa wesieri mravalkuTxedis ageba SeiZleba maSin da
q1 q2 q
mxolod maSin, Tu ∃m, q1 , ..., ql ∈ N0 ise, rom n = 2m · (22 + 1) · (22 + 1) · · · (22 l + 1).
am formulidan gamomdinare SeiZleba wesieri xuTkuTxedis, cxrametkuTxedisa da 65537 kuTxedis ageba,
savarjiSo 3.19: SeadgineT algoriTmi, romlis meSveobiTac SeiZleba wesieri eqvskuTxedis ageba.
savarjiSo 3.20: SeadgineT algoriTmi, romlis meSveobiTac SeiZleba wesieri rvakuTxedis ageba.
savarjiSo 3.21: SeadgineT algoriTmi, romlis meSveobiTac SeiZleba wesieri xuTkuTxedis ageba.
saxazaviT agvagebinebda saWiro wertilebsa da figurebs. es ki imas ar niSnavs, rom ar arsebobs sxva
raime meTodi (Tu ar SevizRudebiT mxolod fargliTa da saxazaviT), riTac am amocanebs gadavWriT.
q
Ria amocana: wesieri mravalkuTxedis zemoT moyvanil formulaSi 22 + 1 e.w. fermas martivi ricxvia.
did xans egonaT, rom es formula mxolod martiv ricxvebs iZleoda, magram aRmoCnda, rom es ase araa.
ufro metic: es formula ZiriTadad Sedgenil ricxvebs iZleva. magram mniSvnelovania Semdegi sakiTxi:
sasrulia Tu ara fermas martiv ricxvTa simravle? an, sxva sityvebiT rom vTqvaT, Segvxvdeba Tu ara
q
mimdevrobaSi (22 + 1)∞
q=0 usasrulod bevri martivi ricxvi? am SekiTxvaze pasuxi jer-jerobiT ucnobia.
meore TavSi ganvixileT algoriTmebis e.w. rekursiuli da iteraciuli aRwera. rekursiul meTodSi
algoriTmi Tavis Tavs iyenebs, mxolod ufro dabali parametrebiT, xolo iteraciulSi ki brZanebaTa
28 Tavi III amocanaTa rekursiuli da iteraciuli aRwera
orive meTods Tavisi dadebiTi da uaryofiTi mxareebi aqvs, romelic konkretul amocanasa da mis re-
figurebis agebis klasikuri, Zveli berZnuli amocanebi warmoadgens, romlebic aTaswleulis ganmav-
lobaSi amouxsneli rCeboda da mxolod mecxramete saukuneSi, maTematikis sakmarisi ganviTarebis Sede-
gad gadaiWra.
problemis amouxsnadoba: garkveul amocanas veravin amoxsnis. zogadad, imis damtkiceba, rom garkveul
araamoxsnad amocanebze Cven SemdgomSic bevri gveqneba salaparako, aq ki SeiZleba imis aRniSvna, rom zo-
dakavSirebuli: SeuZlebelia erTeulovani wris farTobis mqone kvadratis ageba mxolod farglisa
da saxazavis gamoyenebiT. zogadad araamoxsnadi amocanebisgan gansxvavebiT, romelTa amoxsna aranairi
a1 = 1, a2 = 3, a3 = 5, a4 = 7, ...
Sn = a1 + a2 + a3 + · · · + an .
Sn = Sn−1 + an
(pirveli n−1 kenti ricxvis jams mimatebuli me- n-e kenti ricxvi).
S1 = a1 = 1
S2 = a1 + a2 = 4
S3 = a1 + a2 + a3 = 9
S4 = a1 + a2 + a3 + a4 = 16
S5 = a1 + a2 + a3 + a4 + a5 = 25
···
weria: S1 = 12 , S2 = 22 , S3 = 32 , S4 = 42 , S5 = 52 .
es gvawvdis pirvel mosazrebas imis Sesaxeb, Tu risi toli SeiZleba iyos zogadad pirveli n kenti
ricxvis jami: Si = i2 .
magram es mxolod mosazrebaa, romelsac damtkiceba Wirdeba. es mosazreba TviT milioni magaliTis
ase rom, saWiroa raRaca zogadi meTodi, romliTac aseT rameebs davamtkicebT.
swored aseTia e.w. maTematikuri induqciis meTodi, romelic Semdegi sami bijisagan Sedgeba:
29
30 Tavi IV maTematikuri induqcia da misi gamoyeneba
am sami bijis Sesrulebisas Semdegs mivaRwevT: Tu mosazreba WeSmaritia n = 1-Tvis, me-2-e bijSi CavsvavT
n = 1. n+1-Tvis (mesame punqti), igi WeSmaritia 2-Tvis. ese igi, SeiZleba
Tu mosazreba WeSmaritia agreTve
1. induqciis Semowmeba: n = 1: S1 = 12 = 1;
mosazreba damtkicebulia.
rodesac rekursiuli formula Caiwereba ararekursiuli saxiT (anu formulaSi mxolod cvladebi da
mudmivebi gvxvdeba), amboben, rom rekursia gaiSala da formula Caiwera ararekursiuli saxiT.
n·(n+1)
rekursiuli tolobiT mocemulia mimdevroba S1 = 1, Sn = Sn−1 + n. daamtkiceT, rom Sn = 2 .
1·(1+1)
1. induqciis Semowmeba: n = 1: S1 = 2 = 1;
n·(n+1)
2. induqciis daSveba: Sn = 2 ;
(n+1)·(n+2)
3. induqciis biji: davamtkicoT Sn+1 = 2 ..
n·(n+1)
radgan Sn+1 = Sn +(n+1), amitom, induqciis daSvebis Tanaxmad, Sn+1 = 2 +(n+1) = (n+1)( n2 +1) =
(n+1)·(n+2)
2 .
savarjiSo 1.2: maTematikuri induqciis gamoyenebiT daamtkiceT, rom nebismieri kenti ricxvi Semdegi
formuliT Caiwereba: ai = 2 · i − 1.
savarjiSo 1.3: mocemulia rekursiuli toloba S1 = 3, Sn = Sn−1 +n. gaxseniT rekursia (toloba CawereT
ararekursiuli saxiT).
savarjiSo 1.4: mocemulia rekursiuli toloba K1 = 7, Kn = Kn−1 + 2n. gaxseniT rekursia (toloba
savarjiSo 1.6: mocemulia rekursiuli toloba L1 = 7, Ln = 2 · Ln−1 . gaxseniT rekursia (toloba CawereT
ararekursiuli saxiT).
4.2 maTematikuri induqciis gamoyeneba 31
• induqciis daSveba: davuSvaT, An algoriTmi sworia raRaca n naturaluri ricxvisaTvis (da masze
Tu davamtkicebT, rom An+1 algoriTmi sworia da gvecodineba, rom A1 sworia, maSin davuSvebT, rom
n=1 da amiT damtkicdeba, rom An+1 = A2 sworia. Tu A2 sworia da damtkicebuli gveqneba, rom An+1
sworia, damtkicdeba, rom A3 sworia da a.S. nebismieri naturaluri ricxvisaTvis.
warmoiSveba zustad iseTive situacia, rogorc n navis gayvanis amocanaSi. xolo induqciis daSvebis
Tanaxmad An algoriTmi n navis gayvanis amocanas sworad xsnis. ase rom, A1 , U, An n + 1 navis gayvanis
Q.E.D.
savarjiSo 2.7: sworad amoxsnis Tu ara Semdegi algoriTmi An = An−1 , U, A1 n navis gayvanis amocanas?
algoriTmis sisworis mtkicebis Semdeg saWiroa misi siswrafis, anu bijebis raodenobis dadgena. A
algoriTmis bijebis raodenobas Semdegnairad aRniSnaven: T (A). Cvens SemTxvevaSi gveqneba T (An ).
radgan jer unda SevasruloT algoriTmi A1 , amis Semdeg algoriTmi U da bolos algoriTmi An−1 ,
maSin An algoriTmis bijebis raodenoba iqneba: T (An ) = T (A1 ) + T (U ) + T (An−1 ) (jer imdeni, ramdenic
saWiroa A1 algoriTmisaTvis, Semdeg imdeni, ramdenic saWiroa U algoriTmisaTvis da bolos imdeni,
es formulac Cawerilia rekursiuli saxiT, radgan igi Tavis Tavs iyenebs, mxolod ufro dabali parame-
Cven viciT, rom T (A1 ) = 3 da T (U ) = 1 (Sesabamisi algoriTmebis gadamowmebiT amaSi advilad vrw-
T (An ) = T (An−1 ) + 4.
Tavis mxriv, T (An−1 ) = T (An−2 ) + 4, T (An−2 ) = T (An−3 ) + 4 ...
aqedan gamomdinare,
savarjiSo 2.8: daamtkiceT, rom amaze ufro swrafi algoriTmi ver iarsebebs.
analogiurad SeiZleba hanois koSkebis HnX1 ,X2 algoriTmis sisworis mtkiceba da bijebis raodenobis
gamoTvla:
X1 ,X3
HnX1 ,X2 = Hn−1 , H1X1 ,X2 , Hn−1
X3 ,X2
.
• induqciis daSveba: davuSvaT, HnX1 ,X2 algoriTmi sworia raRaca n naturaluri ricxvisaTvis (da
X1 ,X2
• induqciis biji: davamtkicoT, rom Hn+1 = HnX1 ,X3 , H1X1 ,X2 , HnX3 ,X2 sworia.
pirvel rigSi HnX1 ,X3 algoriTmiT X1 Zelidan zeda n rgoli X3 Zelze unda gadavitanoT (nax.
rom X1 Zelze yvelaze didi rgoli rCeba, romelzec yvela danarCeni rgolis dadeba SeiZleba, rac
amocanis SeZRudvas ar arRvevs. Semdeg X1 Zelze darCenil did rgols gadavitanT X2 Zelze (nax.
X3 ,X2
4.1(b)), ris Semdegac H algoriTmiT n rgols gadavitanT X3 Zelidan X2 Zelze (nax. 4.1(g)). aqac
n
X3 ,X2
unda gaviTvaliscinoT, rom, induqciis daSvebis Tanaxmad, H algoriTmi yvela wesis dacviT
n
moqmedebs da X2 Zelze yvelaze didi rgoli devs, romelzedac nebismieri sxva rgolis dadeba
imisaTvis, rom davadginoT, Tu ramden bijs andomebs es algoriTmi, ganvixiloT misi rekursiuli Cana-
weri:
X1 ,X3
HnX1 ,X2 = Hn−1 X3 ,X2
, H1X1 ,X2 , Hn−1 .
X1 ,X3
T (HnX1 ,X2 ) = T (Hn−1 ) + T (H1X1 ,X2 ) + T (Hn−1
X3 ,X2
).
A,C
savarjiSo 2.9: ras aRniSnavs T (Hn+3 ), T (H3C,B ), T (H7A,C )?
savarjiSo 2.10: risi tolia T (H1A,C ) da T (H2A,C )?
savarjiSo 2.11: daamtkiceT, rom T (H1A,C ) = T (H1B,C ) da zogadad: T (HnX1 ,X2 ) = T (HnY1 ,Y2 ) ∀X1 , X2 , Y1 , Y2 ∈
{A, B, C} (ar aqvs mniSvneloba, romeli Zelidan romelze gadavawyobT piramidas - bijebis raodenoba
ucvlelia).
X1 ,X3
radgan HnX1 ,X2 = Hn−1 , H1X1 ,X2 , Hn−1
X3 ,X2
, jer unda Sesruldes
X1 ,X3
Hn−1 , Semdeg H1X1 ,X2 da bolos
X3 ,X2
Hn−1 .
aqedan gamomdinare,
X1 ,X3
T (HnX1 ,X2 ) = T (Hn−1 ) + T (H1X1 ,X2 ) + T (Hn−1
X3 ,X2 X1 ,X2
) = 2 · T (Hn−1 )+1
(ix. wina savarjiSoebi).
T (HnX1 ,X2 ) = 2n − 1.
4.3 fibonaCis mimdevroba 33
savarjiSo 2.13: ganixileT n navis gayvanis iteraciuli algoriTmi. maTematikuri induqciis gamoyenebiT
savarjiSo 2.14: ganixileT n rgoliani hanois koSkis iteraciuli algoriTmi da gamoiTvaleT misi bi-
jebis raodenoba.
SeniSvna: am iteraciuli algoriTmis bijebis daTvla martivi araa, radgan araa cxadi, ramdenjer unda
Sesruldes cikli.
hanois koSkebis amocanis magaliTze SeiZleba davinaxoT algoriTmebis iteraciuli aRweris uaryo-
fiTi mxare. Tu rekursiul SemTxvevaSi rogorc bijebis daTvla, aseve sisworis mtkiceba maTematikuri
magram arsebobs magaliTebi, romlis ganxilvisas aSkaraa iteraciuli algoriTmis efeqturoba rekur-
siulTan SedarebiT. aseTi magaliTia fibonaCis mimdevrobis gamoTvlis amocana, romelsac Cven qvemoT
ganvixilavT.
zemoT Tqmulidan gamomdinareobs, rom yoveli amocanis implementaciisas (anu realizaciisas) detalu-
radaa gasaanalizebeli misi Sinaarsi, moTxovnebi, SezRudvebi, monacemTa tipebi, rom misTvis efeqturi
algoriTmi SevqmnaT.
cnobilma italielma mecnierma leonardo da pizam (Leonardo da Pisa), romelic meTormete saukunis
bolosa da mecamete saukunis dasawyisSi cxovrobda da ufro fibonaCis saxeliTaa cnobili (Fibonacci),
Semdegi amocanis gadaWra gadawyvita:
glexi zrdis kurdRlebs. yoveli kurdReli badebs erT kurdgels, rodesac ori Tvis gaxdeba da Semdeg
TiTo kurdRels yovelTviurad. ramdeni dedali kurdReli eyoleba glexs n TveSi, Tu CavTvliT, rom
kurdRlebi ar kvdebian?
Tu n mcirea, raodenobis gamoTvla araa rTuli: pirvel da meore TveSi mas 1 kurdReli hyavs, radgan
kurdReli mxolod ori Tvis Semdeg iZleva STamomavlobas. mesame Tves mas 2 kurdReli eyoleba, xolo
meoTxeSi ki 3, radgan pirvelma kurdRelma misca kidev 1 da meore jer ori Tvis araa. amis Semdeg misi
pirveli da meore kurdReli orive STamomavlobas iZleva, ase rom, mexuTe TveSi mas 5 kurdReli eyo-
leba. zogadad, me- n-e TveSi axlad Semomatebul kurdRelTa ricxvi tolia im kurdRelTa ricxvisa,
romlebic sul cota 2 Tvis arian. aqedan gamomdinare, Tu me- n-e TveSi kurdRelTa raodenobas aRvniS-
Fn = Fn−1 + Fn−2
F0 = 0; F1 = 1; Fn = Fn−1 + Fn−2 ,
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, . . .
aseTi saxiT miRebul ricxvebs fibonaCis ricxvebs uwodeben, xolo am mimdevrobas -- fibonaCis mimdev-
aRsaniSnavia, rom es mimdevroba antikuri xanis saberZneTsa da Sua saukuneebis indoeTSic iyo cnobili.
zogjer mis nulovan wevrs F0 = 0 ar ganixilaven xolme da mis pirvel or wevrad F1 da F2 iReben.
rogorc aRmoCnda, zemoT moyvanili formula kurdRelTa raodenobas arasworad iTvlis, magram sa-
magierod fibonaCis ricxvebi Zalian xSirad gvxvdeba bunebaSi da mecnierebaSic did rols TamaSoben.
ase, magaliTad, mzesumziras nayofSi Tesli ganTavsebulia momrgvalebul wirebze, romelTa sqemac
am naxazebidan Cans, rom Tesli ori sapirispirod mimarTuli figuris msgavsadaa ganlagebuli, sadac
amas garda, xeebSi totebis ganStoebisa an yvavilebis furclebis ricxvi ZiriTadad fibonaCis mimde-
vrobis erT-erTi wevris tolia xolme (mravlad moiZebneba yvavili an mcenare 3, 5, 8, 13 furcliT, magram
damtkicebulia, rom nebismieri naturaluri ricxvi calsaxad Caiwereba iseTi fibonaCis ricxvebis
aseTi calsaxa jami warmoSobs fibonaCis ricxvebis mimdevrobas, anu kods, romelic calsaxad gan-
fibonaCis mimdevrobis gamoyenebiT gadaWrili iqna meoce saukunis dasawyisSi udidesi germaneli maTe-
matikosis daviT hilbertis mier dasmuli erT-erTi umniSvnelovanesi amocana (hilbertis X problema).
ganvixiloT Semdegi amocana: mocemulia n safexuriani kibe. Tu Cven kibis avla SegviZlia ise, rom TiTo
nabijSi erT an or safexurs avdivarT, kibis avlis ramdeni sxvadasxva varianti arsebobs ?
cxadia, Tu n = 1, Cven kibis avlis erTad-erTi saSualeba gveqneba. Tu n = 2, maSin gveqneba ori SesaZle-
bloba: an TiTo-TiTo kibis avlis, an erT jerze oris. n=3 SemxvevaSi gveqneba 3 SesaZlebloba: 1+1+1
SeiZleba Gn+1 ricxvis gamoTvla Semdegi analizis safuZvelze: Tu mocemulia n + 1 safexuriani kibe,
Cven SegviZlia jer aviaroT erTi safexuri da mere n safexuri Gn sxvadasxva meTodiT, an jer aviaroT
2 safexuri da Semdeg n − 1 safexuri Gn−1 sxvadasxva meTodiT. aqedan gamomdinare, viRebT formulas
Gn+1 = Gn + Gn−1 ,
rac fibonaCis mimdevrobis ganmsazRvreli rekursiuli formulaa. gansxvaveba mxolod isaa, rom am
mimdevrobebis pirveli da meore elementi fibonaCis mimdevrobis meore da mesame elementebis tolia.
Gn = Fn+1 .
4.3 fibonaCis mimdevroba 35
meore amocanad SeiZleba Wadrakis dafis dominos qvebiT gadafarvis problema moviyvanoT:
mocemulia Wadrakis dafis fragmenti zomiT 2×n da n cali dominos qva, romelTa Soris TiTo 2
kvadrats faravs. ramdeni sxvadasxva meTodiT SeiZleba n qviT 2 × n zomis fragmentis dafarva? qveda
naxatSi moyvanilia amonaxsnebi 2 × 3, 2 × 4 da 2×5 zomisaTvis.
savarjiSo 3.15: davuSvaT, 2 × n fragmentis gadafarva Pn cali sxvadasxva meTodiT SeiZleba (zemoT
• F1 + F2 + · · · + Fn = Fn+2 − 1;
• F3n luwia;
• F1 + F3 + F5 + · · · + F2n−1 = F2n ;
• F0 − F1 + F2 − F3 + · · · − F2n−1 + F2n = F2n−1 − 1;
• F12 + F22 + · · · + Fn2 = Fn · Fn+1 ;
• Fn−1 · Fn+1 − Fn2 = (−1)n ;
gcd(Fm , Fn ) = Fgcd(m,n)
• Fn+m = Fn−1 Fm + Fn Fm+1 ;
• F(k+1)n = Fn−1 Fkn + Fn Fkn+1 ;
• Fn = Fl Fn−l+1 + Fl−1 Fn−1 ;
2 2
• Fn = F(n+1)/2 + F(n−1)/2 , Tu n kentia;
36 Tavi IV maTematikuri induqcia da misi gamoyeneba
2 2
• Fn = Fn/2+1 + Fn/2−1 , Tu n luwia;
Ria sakiTxi: Segvxvdeba Tu ara fibonaCis mimdevrobaSi usasrulod bevri martivi ricxvi?
savarjiSo 3.18: dawereT algoriTmi, romelic mocemuli ricxvisaTvis gaarkvevs, aris Tu ara igi fi-
bonaCis ricxvi.
bunebrivad ismis Semdegi sakiTxi: ramden bijSi SeiZleba gamoviTvaloT Fn zemoT moyvanili rekursi-
savarjiSo 3.19: gamoiTvaleT T (Fn ) (zemoT moyvanili Fn ricxvis gamoTvlisaTvis saWiro bijebis rao-
denoba).
axla ki ganvixiloT fibonaCis ricxvebis gamoTvlis e.w. iteraciuli algoriTmi, romelic ramodenime-
1: gaimeore n-jer:
2: {
3: c = a + b;
4: b = a;
5: a = c;
6: }
algoriTmi dasrulebulia
savarjiSo 3.20: daamtkiceT, rom am algoriTmis Sesrulebis Semdeg a cvladSi fibonaCis me- n-e ricxvi
savarjiSo 3.21: daamtkiceT, rom zemoT aRwerili iteraciuli algoriTmiT me- n-e fibonaCis ricxvis
am ori magaliTidan naTlad Cans, rom fibonaCis ricxvebis gamoTvla gacilebiT ufro swrafia iteraci-
magram ram gamoiwvia aseTi gansxvaveba gamoTvlis siswrafeSi? am sakiTxis gasaanalizeblad ganvixi-
F5 F5 F5
F3 F4 F3 F4 F3 F4
F3 F3
F1 F2 F2 F1 F2 F2
F1 F2
(a ) (b ) (g)
Tu yovel wveros (wertils) warmovidgenT, rogorc fibonaCis mimdevrobis Sesabamis ricxvs da am wvero-
dan xazebiT dakavSirebul qveda wveroebs rogorc am ricxvis gamosaangariSeblad saWiro sxva ricxvebs,
4.3 fibonaCis mimdevroba 37
Sebs F3 ricxvs, rac Tavis mxriv kidev ori ricxvis jamisagan Sedgeba. aqedan gamomdinare, ramodenime
gamoTvla YzedmetiaA: SesaZlebeli iqneboda, magaliTad, F3 ricxvis erTxel gamoTvla da Sedegis sadme
Senaxva misi saWiroebis SemTxveveaSi gamoyenebis mizniT, rac zedmet gamoTvlas Tavidan agvacilebda.
am magaliTze naTlad Cans, Tu ra uaryofiTi mxare aqvs rekursiis YbrmadA gaxsnas: xSirad ukve gamo-
Tvlili nawilebi Tavidan gamoTvleba. swored es iyo imis mizezi, rom 1950-1960an wlebSi rekursiuli
funqciebi mTlianad amoiRes (an faqtiurad ar gamoiyeneboda) daprogramebis enebSi. magram mogviane-
biT, kompilatorebis optimizatorebis ganviTarebis Sedegad, es problema daZleul iqna da axla ukve
rekursiul struqturebSi monacemTa erTxel gamoTvlisa da maTi Semdgomi gamoyenebis mizniT Senaxvis
ideazea dafuZnebuli e.w. dinamiuri daprogramebis principi, romelsac Cven Semdgom kursebSi detalu-
rad ganvixilavT.
savarjiSo 3.22: daxazeT F6 da F7 ricxvebis gamoTvlisTvis saWiro diagramebi ise, rogorc es zemoT
cxadia, rom ufro mosaxerxebeli iqneboda fibonaCis ricxvebis ararekursiuli formuliT gamoan-
gariSeba. maSin mis gamoTvlas arc Tu iseT did dros movandomebdiT. da marTlac, aseTi warmodgena
arsebobs:
√ !n √ !n !
1 1+ 5 1− 5
Fn = √ · − .
5 2 2
savsebiT logikuria Semdegi Sekitxva: rogor SeiZleba am formulis gamoyvana? ra gziT miagno vinmem
pirvel rigSi saWiroa mimdevrobis ricxvebis dakvirveba. erTi SexedviT, Fn = Fn−1 + Fn−2 kanonzomiere-
0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55, 89, 144, 233, 377, 610, 987, 1597, 2584, 4181, 6765, 10946, 17711, 28657, 46368, . . .
Fn
Tn = Fn−1 (n > 1):
1 2 3 5
T2 = 1 = 1; T3 = 1 = 2; T4 = 2 = 1, 5; T5 = 3 ≈ 2, 666667;
8 13 21 34
T6 = 5 = 1, 6; T7 = 8 = 1, 625; T8 = 13 ≈ 1, 615; T9 = 21 ≈ 1, 619;
55 89 144 233
T10 = 34 ≈ 1, 6176; T11 = 55 ≈ 1, 618; T12 = 89 ≈ 1, 61798; T13 = 144 ≈ 1, 61805;
fardeba, erTi ricvisken miiswrafvis, anu sul ufro da ufro uaxlovdeba am ricxvs da maT Soris
Fn
lim = Φ ≈ 1, 6180339887.
n→∞ Fn−1
38 Tavi IV maTematikuri induqcia da misi gamoyeneba
√
1+ 5
aq Φ= 2 e.w. oqros kveTaa da ityvian, rom Sefardebis mimdevrobis zRvari Φ tolia, Tu indeqsi n
miiswrafvis usasrulobisken (es maTematikuri analizis safuZvlebis sakiTxia da Cven amas detalebSi
Cvens SemTxvevaSi es imas niSnavs, rom dawyebuli raRaca adgilidan, fibonaCis mimdevroba geometriuli
progresiis Tvisebebs avlens. aqedan gamomdinare, SegviZlia vivaraudoT, rom arsebobs iseTi mimdev-
roba
Gn = c · q n ,
romelic emTxveva fibonaCis mimdevrobas (dawyebuli raime adgilidan mainc) raRaca c, q ∈ N ricxve-
Gn = Gn−1 + Gn−2 .
aqedan gamomdinare,
c · q n = c · q n−1 + c · q n−2
da, Sesabamisad, Tu tolobis orive mxares gavyofT c · q n−2 sidideze, miviRebT Semdeg gantolebas, rom-
q 2 = q + 1.
am kvadratuli gantolebis amonaxsnebia
√ √
1+ 5 1− 5
q1 = da q2 = .
2 2
√ !n √ !n
1+ 5 1− 5
G0n = c · da G00n = c · ,
2 2
darCa mxolod am ori mimdevrobidan erT-erTisa an maTi kombinaciis amorCeva da c parametris dadgena
√
ganvixiloT mimdevroba G0n . Tu n = 1, viRebT: G01 = c · 1+ 5
2 da, aqedan gamomdinare, radgan Cven gvinda,
√
1+ 5
c· = 1.
2
√ 2
ese igi, c= 2√
1+ 5
. magram am SemTxvevaSi G02 = 1+2√5 · 1+2 5 6= F2 = 1. ase rom, (G0n )∞
n=1 mimdevroba calke
devrobas.
√ !n √ !n !
1+ 5 1− 5
Hn = G0n − G00n =c· − .
2 2
savarjiSo 3.26: ganixileT mimdevroba Hn0 = G0n + G00n . akmayofilebs Tu ara igi fibonaCis pirobas?
cxadia, H0 = 0 da amiT am mimdevrobis nulovani wevri fibonaCis mimdevrobis nulovan wevrs emTxveva.
axla ki ganvixiloT H1 :
√ ! √ !!
1+ 5 1− 5
H1 = c · − .
2 2
radgan Cven gvinda, rom es wevri fibonaCis mimdevrobis pirvel wevrs daemTxvas, viRebT gantolebas:
√ ! √ !!
1+ 5 1− 5
H1 = c · − = 1.
2 2
√ ! √ !!
1 1+ 5 1− 5
H1 = √ · − .
5 2 2
∞
radgan mimdevroba (Hn )n=1 akmayofilebs fibonaCis pirobas da misi pirveli ori wevri fibonaCis mimde-
vrobis pirveli ori wevris tolia, es ori mimdevroba mTlianad daemTxveva erTmaneTs:
√ !n √ !n !
1 1+ 5 1− 5
Hn = √ · − .
5 2 2
r. d. g.
√ n √ n
savarjiSo 3.27: ganixileT mimdevroba Hn0 = G0n + G00n = c0 · 1+ 5
2 + 1− 5
2 .
0 0
SeiZleba Tu ara aq c cvladis ise SerCeva, rom H mimdevroba fibonaCis mimdevrobas daemTxvas?
bebs da maT urTierTdamokidebulebas. am dakvirvebis process induqcia ewodeba (ar agerioT ze-
kvirveba igulisxmeba;
ufro da ufro uaxlovdeba raRac ricxvs - ise, rogorc geometriuli progresia - SesaZlebelia,
• aqedan gamomdinare Seiqmna kvlevis axali obieqti: fibonaCis Tvisebis mqone geometriuli progre-
sia.
Cveni kvlevis obieqti am SemTxvevaSi ricxvTa mimdevroba iyo, kanonzomiereba ki - geometriul progre-
siasTan msgavseba. amis mizezi SeiZleba iyos is, rom Cveni sawyisi mimdevroba (am SemTxvevaSi fibonaCis
e.w. paskalis samkuTxedSi igulisxmeba samkuTxa cxrili, romlis yoveli elementi mis zemoT mdgari
1
1 1
1 2 1
1 3 3 1
1 4 6 4 1
1 5 10 10 5 1
1 6 15 20 15 6 1
1 7 21 35 35 21 7 1
1 8 28 56 70 56 28 8 1
1 9 36 84 126 126 84 36 9 1
1 10 45 120 210 252 210 120 45 10 1
ase, magaliTad, meoTxe striqonis meore elementi aris 3, radgan mis zemoT mdgari ori elementi (anu
aseTi meTodiT dalagebul ricxvebs sakmaod farTod gamoiyeneben praqtikaSi. marTalia, igi ukve Zvel
indoeTSi, Zvel saberZneTsa da Suasaukuneebis iranSic iyo cnobili, misi Tanamedrove mecnierebaSi
gamoyeneba frang mecniers blez paskals ekuTvnis da CvenSi mis saxels atarebs (Tumca aRmosavleTSi
raSi SeiZleba gamogvadges paskalis samkuTxedis ricxvebi? maTi yvelaze farTod gamoyenebad SeiZleba
(a + b)0 = 1,
(a + b)1 = a + b = 1a1 b0 + 1a0 b1 ,
(a + b)2 = a2 + 2ab + b2 = 1a2 b0 + 2a1 b1 + 1a0 b2 ,
(a + b)3 = a3 + 3a2 b + 3ab2 + b3 = 1a3 b0 + 3a2 b + 3ab2 + 1a0 b3
Tu zeda magaliTebSi davakvirdebiT TiToeul mravalwevrs (anu polinoms), advilad davinaxavT, rom
maTi koeficientebi zustad paskalis samkuTxedis striqonebia. aRmoCnda, rom es yovelTvis asea: ori
ricxvis jamis n xarisxSi ayvanis polinomi paskalis samkuTxedis n+1 striqonis elementebs emTxveva:
ai,j = Pi+1,j ,
sadac Pk,l paskalis samkuTxedis k striqonSi l poziciaze mdgar elements aRniSnavs.
ufro metic: paskalis samkuTxedis yoveli Pi,j elementi e.w. binomialur koeficients, jufdebas aR-
niSnavs:
i−1
Pi,j =
j−1
k
Tavis mxriv jufdeba Cpk ≡ k elementiani simravlidan p sxvadasxva elementis amorCevis Sesa-
p
ZleblobaTa raodenobas aRniSnavs. magaliTad, Tu k = 4 da p = 2, unda ganvixiloT 4 elementiani
simravle {a1 , a2 , a3 , a4 } (elementebis saxelebs mniSvneloba ar aqvs) da vnaxoT, misi ramdeni sxvadasxva
2 elementiani qvesimravle arsebobs (ramdeni sxvadasxva ori elementis amorCevaa SesaZlebeli). Cvens
SemTxvevaSi gveqneba:
4.5 mokle daskvna 41
k 4
{a1 , a2 }, {a1 , a3 }, {a1 , a4 }, {a2 , a3 }, {a2 , a4 }, {a3 , a4 }, anu sul 6 cali: Cpk ≡ = = 6.
p 2
es yvelaferi e.w. kombinatorikis sakiTxebia, romlebsac Cven mogvianebiT ganvixilavT.
savarjiSo 4.28: dawereT rekursiuli formula, romliTac paskalis samkuTxedis Pn,m elements gamo-
viTvliT.
k!
SeniSvna: arsebobs jufdebis gamoTvlis formula Cpk = p!(k−p)! , romlis Sinaarssac da gamoyvanis pro-
savarjiSo 4.29: wina savarjiSoSi gamoTvlili rekursiuli formulis safuZvelze dawereT rekursi-
mesame TavSi Cven ganvixileT e.w. maTematikuri induqciis principi, romelic farTod gamoiyeneba rekur-
Svnelovani magaliTebi.
moCnda am ori meTodis principuli gansxvaveba da rekursiuli algoriTmis susti mxareebi da am sisus-
ganvixiloT Semdegi magaliTi: patara princs aqvs TeTr da Sav cxvriani fara. cxvris es fara SeiZleba
sasrul elementian simravled ganvixiloT (nax. 5.1 marcxniv). mas pirvel rigSi imis garkveva unda, Savi
cxvari metia faraSi, Tu TeTri. amisaTvis igi calke ayenebs TeTr da Sav cxvrebs, riTac faras, anu
TeTri da Savi cxvris fara calkeul simravleebadac SeiZleba ganvixiloT. imis dasadgenad, Tu romel
simravleSia meti elementi (anu TeTr Tu Sav faraSia meti cxvari), patara princi am simravleebis
sxva sityvebiT rom vTqvaT, erTi simravlis TiToeul elements (Sav cxvars) erT elements Seusabamebs
meore simravlidan (TeTr cxvars) ise, rom or sxvadasxva elements ori sxvadasxva elementi Seesabame-
bodes (or sxvadasxva TeTr cxvars ori sxvadasxva Savi cxvari Seesabameba).
radgan aseTi dawyvilebis Semdeg darCa zedmeti TeTri cxvari, vaskvniT, rom TeTri cxvari metia.
cxadia, rom aseTi saxis dawyvileba nebismier or sasrul simravles Soris SeiZleba. mTavaria, rom
pirveli simravlis ori sxvadasxva elementi meore simravlis or sxvadasxva elementTan davawyviloT.
Tu amdagvari dawyvilebis Semdeg arc erT simravleSi zedmeti (dauwyvilebeli) elementi ar dagvrCeba,
bunebrivia Semdegi SekiTxva: SeiZleba Tu ara amdagvari dawyvileba usasrulo simravleebSi? Tu gan-
vixilavT naturalur ricxvTa simravles N = {1, 2, 3, 4, ...} da luw ricxvTa simravles 2N = {2, 4, 6, 8, ...},
aseTi dawyvileba SeiZleba iyos ( 1 ↔ 2), (2 ↔ 4), (3 ↔ 6), (4 ↔ 8), ... , (n ↔ 2n), ....
43
44 Tavi V simravleebi da maTi simZlavre
imis da miuxedavad, rom es procesi usasrulod gagrZeldeba, dabejiTebiT SegviZlia imis Tqma, rom
N simravlis yvela elements 2N simravlis zustad erTi elementi Seesabameba da YzedmetiA elementi
arc erT simravleSi ar darCeba (zustad igive msjelobiT vaskvniT, rom 2N simravlis yvela elements
(sxva sityvebiT rom vTqvaT, ar arsebobs b simravleSi iseTi elementi, romelsac a simravleSi
• f :A→B asaxvas ewodeba bieqciuri (anu bieqcia), Tu igi erTroulad ineqciuric da sureqciuli-
caa.
yovelive zemoT Tqmulidan gamomdinareobs, rom or (sasrul an usasrulo) simravleSi erTi da igive
raodenobis elementebia, Tu maT Soris arsebobs bieqcia (urTierTcalsaxa Sesabamisobis dadgenaa Sesa-
Zlebeli).
aqve unda aRiniSnos, rom usasrulo simravleebSi elementebis tol an met raodenobaze laparaki arako-
reqtulia. amitomac amboben, rom ori simravlis simZlavre tolia, Tu maT Soris arsebobs bieqcia. Tu
or A da B simravles Soris bieqcia ar arsebobs, magram arsebobs bieqcia mTels A simravlesa da B sim-
ravlis raime qvesimravles (anu nawils) Soris, maSin amboben, rom A simravlis simZlavre B simravlis
simZlavreze naklebia, an (rac igivea) B simravlis simZlavre A simravlis simZlavreze metia.
sainteresoa is faqti, rom zemoT Cven raRaca simravlisa da mis qvesimravles (nawils) Soris SevZeliT
bieqciis damyareba (elementebis sruli dawyvileba), anu davadgineT, rom raRac simravleebSi zustad
imdeni elementia, rogorc mis raRaca nawilSi. cxadia, rom aseTi ram sasrul simravleebSi SeuZlebe-
lia.
ganmarteba 1.2: usasrulo ewodeba iseT simravles, romelsac Tavisi bieqtiuri qvesimravle moeZebneba.
Tu A simravle sasrulia, ityvian, rom igi sasruli simZlavrisaa da misi elementebis raodenoba aRi-
Tu SeiZleba naturalur ricxvTa simravlesa da raime A simravles Soris bieqciis damyareba, maSin
ityvian, rom A simravle Tvladia (an Tvladi simZlavrisaa, misi elementebis gadaTvlaa SesaZlebeli).
cxadia, rom Tu or simravles Soris bieqciis damyareba SeiZleba, aseTi bieqcia (dawyvileba) mraval-
magaliTad, naturalur da luw ricxvTa Soris SesaZlebelia Semdegi dawyvilebac: (1 ↔ 4), (2 ↔ 6),
3 ↔ 2), (4 ↔ 8), (5 ↔ 10), (6 ↔ 12),
( n ↔ 2n),
... , ( ....
5.1 bieqciuri asaxva da Tvladi simravllebi 45
zogadad, Tu mocemulia sasruli simravleebi A da B iseTi, rom |A| = |B| = n, maSin maT Soris arsebobs
n! = 1 · 2 · 3 · · · n sxvadasxva bieqcia (dawyvileba). aqedan gamomdinare, usasrulo simravleebs Soris an
Z = {..., −n, ..., −3, −2, −1, 0, 1, 2, 3, ..., n, ...} mTel ricxvTa simravleebs Soris.
ravle yvelgan mkvrivia, anu nebismier or ricxvs Soris usasrulod bevri racionaluri ricxvia: ]0; 1[
1 1 1 1 1
monakveTSi gvxvdeba
2 , 3 , 4 , 5 , ..., n , ... mimdevroba da, zogadad, nebismier ]q1 ; q2 [ monakveTSi gvxvdeba usa-
srulo mimdevroba
q2 −q1
q1 + 2 , q1 + q2 −q 3 , q1 +
1 q2 −q1
4 , ..., q1 +
q2 −q1
n , ... (aq q1 , q2 ∈ Q racionaluri ricxvebia).
aqedan gamomdinare SeiZleba vifiqroT, rom Q simravleSi YmetiA elementia, vidre N-Si, radgan ukve
nebismier or naturalur ricxvs Soris usasrulod bevri racionaluri ricxvia, Tumca WeSmaritia
Semdegi Teorema:
damtkiceba: am faqtis Cveneba racionalur ricxvTa gadaTvlis meTodis moyvaniT SeiZleba (mtkicebis
aseT meTods konstruqciuli ewodeba: dasamtkiceblad Cven TviTon meTods avagebT da vnaxavT, rom
1 1 1 1 1 1 1 1
1 2 3 n 1 2 3 n
2 2 2 2 2 2 2 2
1 3 4 m 1 3 4 m
3 3 3 3 3 3 3 3
1 2 4 k 1 2 4 k
n n n n n n n n
1 2 4 p 1 2 4 p
pirvel striqonSi CamovweroT yvela racionaluri ricxvi, romlis mricxvelia 1. meore striqonSi
iseTi, romlis mricxvelia 2 (mniSvnelSi luw ricxvebians ar ganvixilavT, radgan wiladi ukveci unda
cxadia, rom am usasrulo cxrilSi yvela racionaluri ricxvi Segvxvdeba (sxva sakiTxia, rom aseTi
ricxvTa gadaTvla ukve advilia: pirvel nomrad aviRebT marcxena zeda elements, Semdeg - meore nom-
rad - meore striqonis pirvel elements da avalT diagonalze zemoT (ese igi, mesame nomrad gveqneba
pirveli striqonis meore elementi). radgan amis Semdeg diagonalze zemoT asvla aRar SeiZleba, Camov-
divarT qveda (mesame) striqonSi da igive proceduras vagrZelebT: avdivarT diaginalze zemoT manam,
sanam sazRvari ar Segvxvdeba (ris Sedegadac gadavdivarT axal striqonSi), gzaSi ki Semxvedr ricxvs
cxadia, rom am algoriTmiT yvela naturalur ricxvs erT racionalur ricxvs SevusabamebT da yvela
racionalur ricxvs - erT naturalurs (radgan am meTodiT cxrilSi arsebul yvela ricxvs adre Tu
gvian mivadgebiT).
r.d.g.
46 Tavi V simravleebi da maTi simZlavre
savarjiSo 1.3: zemoT damtkicebuli Teoremis safuZvelze aCveneT, rom racionalur ricxvTa simravle
Tvladia.
aqamde ganxiluli yvela usasrulo simravlis simZlavre Tvladi aRmoCnda. bunebrivia Semdegi Seki-
pasuxi erTob moulodnelia: arsebobs araTvladi simravle, anu ori usasrulo simravle SeiZleba
sxvadasxva simZlavris iyos (anu, uxeSad rom vTqvaT, sxvadasxvaraodenobis elements Seicavdes)!
zacias.
sanam TviT damtkicebaze gadavidodiT, unda gavixsenoT is faqti, rom nebismieri iracionaluri ricxvi,
0,121284945767... da a.S.
ganvixiloT ]0; 1[ monakveTze arsebuli iracionaluri ricxvebi da davuSvaT, rom am ricxvTa simravle
Tvladia, anu SeiZleba maTi Camowera ise, rom usasrulo cxrilSi arc erTi ricxvi ar gamogvrCes (esaa
swored sawinaaRmdegos daSvebiT mtkicebis pirveli nabiji: radgan vamtkicebT, rom ]0; 1[ simravle ar
aris Tvladi, jer davuSvaT misi sawinaaRmdego: rom ]0; 1[ simravle aris Tvladi da Semdeg - logikuri
msjelobis jaWvis Sedegad - miviRebT winaaRmdegobas, anu iseT daskvnas, romelic aqamde cnobil WeS-
maritebas ewinaaRmdegeba).
ese igi, nebismieri ricxvi am siaSi SeiZleba Caiweros, rogorc 0, di,1 di,2 di,3 ...di,n ...:
Tu SevZlebT raRac C ricxvis Sedgenas, romelic am siis arc erT elements ar daemTxveva, miviRebT
winaaRmdegobas, radgan es sia unda Seicavdes ]0; 1[ monakveTis yvela ricxvs (arc erTi ar unda iyos
gamorCenili). marTlac, Tu aviRebT C = 0, [d1,1 + 1][d2,2 + 1][d3,3 + 1]...[dn,n + 1]..., es ricxvi Sedgeba iseTi
cifrebisgan, romlebic miviReT zeda cxrilSi Cawerili ricxvebis mier Sedgenili cxrilis diago-
nalze mdgar cifrebs damatebuli 1 (Tan 9 + 1 ≡ 0). sxva sityvebiT rom vTqvaT, pirveli ricxvis mZi-
mis Semdeg pirvel cifrs mimatebuli 1, meore ricxvis mZimis Semdeg meore cifrs mimatebuli 1, mesame
ricxvis mZimis Semdeg mesame cifrs mimatebuli 1 da a. S.. zeda magaliTisaTvis gveqneba C = 0, 208...7...
ra Tqma unda, C 6= D1 , radgan es ricxvebi mZimis Semdeg pirvel cifrSi gansxvavdebian erTmaneTisgan.
aseve C 6= D2 , radgan es ricxvebi mZimis Semdeg meore cifrSi ganxvavdebian da a.S.: analogiuri msjelo-
biT C 6= Di nebismieri ricxvisaTvis, romelic zeda cxrilSi moviyvaneT.
5.2 TeoremaTa mtkicebis diagonalizaciis meTodi: yvela usasrulo simravle toli ar aris! 47
ase rom, Cvens mier Sedgenili usasrulo aTwiladi C ar emTxveva arc erT ricxvs zeda cxrilidan.
sxva sityvebiT rom vTqvaT, es ricxvi cxrilSi araa, rac pirvelad daSvebas ewinaaRmdegeba, rom Cven
yvela iracionaluri ricxvi CamovwereT (gadavTvaleT). radgan Cvens msjelobaSi arsad Secdoma ar
yofila, winaaRmdegoba gamoiwvia daSvebam, rom yvela iracionaluri ricxvis gadaTvla SeiZleba. ase
rom, namdvil ricxvTa simravle araa Tvladi: ar arsebobs bieqcia namdvil ricxvebsa da naturalur
ricxvebs Soris.
r.d.g.
Cveni mtkiceba daviwyeT winaaRmdegobis daSvebiT: davuSviT is faqti, rac dasamtkicebeli gamonaTqvamis
uaryofaa - am SemTxvevaSi is, rom ]0; 1[ monakveTSi iracionalur ricxvTa simravle Tvladia da, aqedan
am daSvebidan logikuri msjelobiT miviReT winaaRmdegoba: yvela ricxvi ar yofila Camowerili, rac
imas unda niSnavdes, rom daSveba iyo araswori (danarCen msjelobaSi Secdoma ar unda iyos gaparuli,
amas garda, msjelobaSi gamoviyeneT e.w. diagonalizaciis meTodi: CamovwereT SesaZlo amonaxsnis
winaaRmdegoba.
zeda Teorema amtkicebs umniSvnelovanes faqts: yvela usasrulo simravle gadaTvladi araa, erT usa-
srulo simravleSi SeiZleba YmetiA elementi iyos, vidre meore, aseve usasrulo simravleSi.
amaze dayrdnobiT Zalian mniSvnelovani daskvnis gamotanaa SesaZlebeli, rac SemdgomSi moxdeba.
savarjiSo 2.4: daamtkiceT, rom diagonalizaciis meTodze dayrdnobiT (wina Teoremis damtkicebis ana-
savarjiSo 2.5: zemoT moyvanil mtkicebaSi sad gamoviyeneT, rom iracionalur ricxvTa warmodgena usa-
sruloa?
bunebrivad Cndeba Semdegi SekiTxva: Tu iracionalur ricxvTa warmodgena usasruloa, rogor SeiZleba
maTi gamoTvla algoriTmulad? pasuxi isaa, rom iracionalur ricxvTa algoriTmulad gamoTvla Seu-
Zlebelia. samagierod SeiZleba maTi nebismieri sizustiT gamoTvla: SeiZleba daiweros algoriTmi,
√
magaliTisaTvis ganvixiloT 2 = 1, 41421356237310... iracionaluri ricxvis gamoTvlis algoriTmi.
1. a0 = n > 0;
an + a2n an 1
2. an+1 = 2 = 2 + an .
pirvel rigSi unda iTqvas, rom rekursiis sawyis parametrad nebismieri dadebiTi ricxvi SegviZlia avi-
RoT. es Sedegze gavlenas ar axdens, Tumca meti cda dagvWirdeba sasurveli sizustis gamosaTvlelad.
Tu aviRebT a0 = 1, miviRebT:
a1 =0,5+1=1,5;
a2 ≈1,41667..;
a3 ≈1,414215...;
a4 ≈1,4142135623746...
48 Tavi V simravleebi da maTi simZlavre
savarjiSo 2.6: gamoiangariSeT a0 = 3 sawyisi mniSvnelobiT miRebuli ricxvebi. ramden bijSi miviRebT
√
savarjiSo 2.7: daamtkiceT, rom 2 araa racionaluri. miniSneba: dauSviT sawinaaRmdego. vTqvaT, arse-
a a
√
bobs ori urTierTmartivi ricxvi a, b (iseTi, rom wiladi
b ar Seikveceba),
b = 2 da miiReT winaaRmde-
goba.
savarjiSo 2.8: ramdeni biji daWirdeba zemoT moyvanil algoriTms a0 = 1 sawyisi monacemiT imisaTvis,
rom mZimis Semdeg 15, 17, 20, 23, 25, 27, 30 cifri gamoiangariSos sworad? zogadad, daaxloebiT ramdeni
biji daWirdeba mas igive sawyisi monacemiT mZimis Semdeg k∈N cifris gamosaTvlelad?
Tu ganvixilavT raime sasrul simravles A, SesaZlebelia misi yvela qvesimravlisagan Semdgari sim-
ravlis ageba. ase, magaliTad, Tu A = {a1 , a2 , a3 }, misi yvela qvesimravlisagan Semdgari simravle iqneba
{∅, {a1 }, {a2 }, {a3 }, {a1 , a2 }, {a1 , a3 }, {a2 , a3 }, {a1 , a2 , a3 }}. zogadad, n elementiani simravlis qvesimravleTa
n
raodenobaa 2 . esec kombinatorikis sakiTxebia, romlebsac Cven SemdgomSi ganvixilavT.
cxadia, rom sasrul simravlesa da misi yvela qvesimravlisagan Semdgar simravles Soris bieqcia ver
iarsebebs. rogorc diagonalizaciis meTodiT mtkicdeba, arc usasrulo simravlesa da misi qvesim-
ravleebis simravles Soris arsebobs bieqcia, rac imas niSnavs, rom nebismier A simravleze ufro
mZlavri simravlea misi yvela qvesimravlis simravle, romelic aRiniSneba rogorc 2A : |A| < |2A |.
meoTxe TavSi Cven gavecaniT e.w. bieqciur asaxvebs da maTze dayrdnobiT simravleTa simZlavreebi gan-
vmarteT, riTac gamoCnda, rom yvela usasrulo simravle araa erTi simZlavris, anu, uxeSad rom vTqvaT,
ori simravlis elementebis dawyvilebis Semdeg erT-erT simravleSi SeiZleba dagvrCes YzedmetiA ele-
mentebi - zogi usasrulo simravle sxva usasrulo simravleze YmetA elements Seicavs: arsebobs sas-
ruli, Tvladi da araTvladi simZlavris simravleebi. ufro metic: yovel mocemul simravleze mZlavri
es erTob ucnauri faqti SemdgomSi imis dasamtkiceblad gamogvadgeba, rom yvela amocana amoxsnadi
araa. ufro metic: gacilebiT YmetiA araamoxsnadi amocana arsebobs, vidre amoxsnadi.
Tavi 6
gramatika
ganvixiloT qarTuli sityvebi YanbaniA da YenaA. es qarTuli enis sityvebia, romelTac enaSi raRaca
mniSvneloba (semantika) aqvs. sxva saqmea YghWpyA - es qarTuli enis sityva araa, Tumca qarTuli anbaniT
ki aris Cawerili. amiTi gansxvavdeba erTmaneTisagan Yenis sityvaA da Yenis anbaniT Cawerili sityvaA.
Yenis anbaniT Cawerili sityvaA am enis anbanis asoebis mimdevrobaa, romelsac raRaca semantikuri dat-
virTva (anu azri) SeiZleba qondes, an ar qondes. raime anbaniT Cawerili sityva SeiZleba iyos sasruli,
an usasrulo. rogorc wesi, Cvens yoveldRiurobaSi mxolod sasruli sityvebi gvxvdeba. sasruli
magaliTad, | anbani | = 6 da | ena | = 3. Tu mocemulia raRaca sityva w = w1 w2 ...wn , misi sigrZe (anu asoebis
raodenoba) Semdegnairad aRiniSneba: |w| = n. w(i) am sityvis i-uri asoa. ase, magaliTad, YanbaniA(4) = YaA
da YeleqtrofikaciaA(7) = YoA.
Tu mocemulia ori sityva w1 da w2 , maSin w1 ◦ w2 = w1 w2 (es ori sityva erTi meores miyolebiT). maga-
liTad, YfexA ◦YburTiA=YfexburTiA. Tu raRaca sityva w = u ◦ v , maSin amboben, rom u sityva w sityvis
prefiqsia, xolo v sityva w sityvis sufiqsia: u ≺ w da v w . w sityvis n asoiani prefiqsi aRiniSneba
rogorc w[n], xolo misi m asoiani sufiqsi ki aRiniSneba rogorc w{m} (ar agerioT w(n) -Si!!!).
savarjiSo 1.1: ras niSnavs Semdegi Canawerebi: |w|, w[|w|], w(|w|), w[|w| − 1], w[0], w{|w|}, w{|w|}, w{|w| − 1},
w{0} ?
savarjiSo 1.2: ras niSnavs Semdegi Canawerebi: |w|, w[|w|], w(|w|), w[|w| − 2], w[0], w{|w|}, w{|w|}, w{|w| − 3},
w{0}, Tu w =YeleqtrofikaciaA ?
savarjiSo 1.3: mocemulia raRaca anbani A da ori sityva w 1 ∈ Am da w2 ∈ An . risi tolia |w1 ◦ w2 | ?
Tu Q = {a, b, g, d, ... }
, j, h qarTuli anbania, maSin Qn yvela im sityvis simravlea, romelic qarTul
anbanzea Sedgenili da romelTa asoebis raodenobaa (anu sigrZea) n: Qn = {w | w(i) ∈ Q, (1 ≤ i ≤ n), |w| =
∗
n}. Q yvela im sasruli sityvis simravlea, romelic Q anbanis asoebiTaa Sedgenili:
∞
[
Q∗ = Qi = Q1 ∪ Q2 ∪ · · · ∪ Qn ∪ · · · .
i=1
sasruli da usasrulo sigrZis sityvebis garda arsebobs kidev e.w. Ycarieli sityvaA , anu iseTi sityva,
romelic arc erTi asosagan ar Sedgeba (carielia). cxadia, rom || = 0, ≺ w da w ◦ = ◦w = w nebismieri
w sityvisaTvis.
49
50 Tavi VI monacemTa kodireba, anbani, ena da gramatika
ganmarteba 1.1: nebismieri sasruli simravle A SegviZlia ganvixiloT, rogorc anbani. am anbanze Seqm-
nili sityvaa am anbanis elementebis (anu asoebis) mimdevrobaa. Tu w raime A anbanze Seqmnili sityvaa,
|w| am sityvaSi Semavali asoebis raodenobaa. Tu |w| = 0, aseT sityvas carieli ewodeba da mas aRniSnaven
simboloTi . Tu |w| = ∞, aseT sityvas ewodeba usasrulo. Tu mocemulia ori sityva w da v (sadac w
sasrulia), maSin w ◦ v = wv am ori sityvis konkatenacia, anu Serwymaa. amboben, rom u sityva w sityvis
prefiqsia (u ≺ w), Tu ∃v sityva iseTi, rom w = u ◦ v . analogiurad, u sityva w sityvis sufiqsia, (u w),
Tu ∃v sityva iseTi, rom w = v ◦ u. Tu w raime sityvaa, maSin w(n) misi me-n-e asoa, w[n| misi n asosagan
sityvaa w1 ◦ w2 ?
savarjiSo 1.5: mocemulia sityvebi w1 = 00134, w2 = 65430, w3 = 001, w4 = 346. WeSmaritia Tu ara Semdegi
xolo YkaciaA ki - sufiqsi. magram YmodikaciaA misi qvesityva araa, Tumca Sedgeba ori qvesityvisagan.
savarjiSo 1.6: WeSmaritia Tu ara Semdegi gamonaTqvamebi: w ∈ A|w| , w ∈ A|w|−1 , w[k] ∈ Ak Tu w sityva A
anbanzea Sedgenili da k∈N ? pasuxebi daamtkiceT.
analogiurad sityvebi SeiZleba SevadginoT nebismier sxva anbanze, anu sasrul simravleze. magaliTad,
Tu mocemulia aTobiTi anbani A = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9}, masSi SeiZleba yvela naturaluri ricxvi Cai-
weros. aseT Canawers Yricxvis aTobiTi CanaweriA ewodeba, radgan mis gamosaxatavad (Casawerad) mxolod
rogorc aRmoCnda, SeiZleba usasrulod bevri anbanis Seqmna. Tu M1 da M2 sxvadasxva anbanebia, arse-
bobs bieqtiuri asaxva f : M1∗ → M2∗ , rac imas niSnavs, rom anbanis SerCevas mniSvneloba ar aqvs: rac
pirvel rigSi qarTuli anbanis TiTo aso aTobiTi anbanis sityvebad unda CavweroT:
a → 00 b → 01 g → 02 d → 03 e → 04 v→ 05 z → 06 T → 07 i → 08 k → 09
l → 10 m → 11 n → 12 o → 13 p → 14 J→ 15 r → 16 s → 17 t → 18 u → 19
f → 20 q → 21 R → 22 y → 23 S → 24 c → 25 C → 26 Z → 27 w → 28 W → 29
x → 30 j → 31 h → 32
Semdeg qarTuli anbaniT Cawerili yoveli sityvis aso Sesabamisi oreuliT unda SevcvaloT. magaliTad,
savarjiSo 1.7: rogor Caiwereba am meTodebiT sityva YeleqtrofikaciaA ? romeli qarTuli sityvaa Ca-
Tu cnobilia, romel asos romeli cifrebis wyvili (oreuli) Seesabameba, advili gamosaangariSebe-
lia qarTuli sityva. magram Tu aTobiTSi Cawerili es sityva vinmes Cauvarda xelSi, vinc ar icis,
Tu romel ricxvs romeli aso Seesabameba, qarTuli sityvis aRdgena gaZneldeba. Zalian Zneli iqneba
sawyisi sityvis aRdgena, Tu Cven asoebs or niSna ricxvebs SevusabamebT ise, rogorc amas Cven movin-
domebT, magaliTad:
a → 39 b → 27 g → 99 d → 03 e → 38 v→ 21 z → 76 T → 78 i → 87 k → 90
l → 10 m → 11 n → 13 o → 31 p → 37 J→ 65 r → 16 s → 17 t → 18 u → 19
f → 47 q → 51 R → 66 y → 08 S → 24 c → 25 C → 26 Z → 00 w → 01 W → 09
x → 81 j → 06 h → 32
Tu cnobilia, romel asos ra oreuli Seesabameba (magaliTad ise, rogorc zeda cxrilSia moyvanili),
SegviZlia raRaca f : Q → A×A funqciis Sedgena (aq Q qarTuli anbania da A = {0, 1, 2, ..., 9}). Tu es
funqcia Sedgenilia zeda cxrilis saSualebiT, maSin f (a) = 39, f (b) = 27, f (l) = 10, f (S) = 24 da a.S.
6.1 monacemTa kodireba 51
raRaca sityva w ∈ Qn ki Semdegi rekursiuli algoriTmiT SeiZleba CavweroT aTobiTi anbanis gamoye-
nebiT:
4: }
5: else
6: {
7: pasuxad gamoitane sityva Y P (w[|w| − 1]) ◦ f (w(|w|))A
8: }
(aq f funqcia zemoT moyvanili cxriliTaa gansazRvruli).
1. es algoriTmi ufro formaluradaa Cawerili, vidre aqamde moyvanil yvela magaliTSi: Canaweri
YalgoriTmi P (w)A niSnavs, rom am algoriTms saxelad ewodeba P , xolo monacemad (an, samecniero
2. imis magivrad, rom sityvierad vweroT: YTu w = , maSin algoriTmi daasruleA, Cven vwerT if (w = )
algoriTmi daasrule. Tu if operatoris frCxilebSi Casmuli piroba WeSmaritia, maSin sruldeba
mis Semdeg figurul frCxilebSi Casmuli brZanebebi. Tu es piroba mcdaria, maSin Sesruldeba else
Semdeg figurul frCxilebSi Casmuli brZanebebi;
3. imis magivrad, rom sityvierad vweroT: YCaatare igive operaciebi w[|w| − 1] monacemisaTvisA, Cven
vwerT P (w[|w| − 1]) (radgan am algoriTms ewodeba P , amitom P (w[|w| − 1]) niSnavs: Caatare algoriTmi
P monacemiT w[|w| − 1].
savarjiSo 1.8: dawvrilebiT aRwereT P (YxeliA) algoriTmis msvleloba (ras akeTebs yovel bijSi).
Tu qarTul sityvebs bolos moyvanili cxrilis mixedviT CavwerT aTobiT anbanSi, maSin sawyisi teqstis
aRdgena sakmaod gaZneldeba, Tu asoebsa da cifrTa oreulebs Soris Sesabamisobebi cnobili ar aris.
savarjiSo 1.9: romeli qarTuli sityvaa kodirebuli zemoT moyvanili cxrilis mixedviT aTobiT an-
aRsaniSnavia, rom arsebobs meTodebi, romelTa saSualebiTac SeiZleba zeda cxrilis mixedviT kodi-
rebuli teqstis gaxsna imis da miuxedavad, Tu cxrili cnobili ar aris: Tu viciT, rom kodirebulia
qarTuli teqsti, movZebniT im oreuls, romelic yvelaze xSirad gvxvdeba. radgan qarTul enaSi yve-
laze xSiria aso YeA, amitom savaraudoa, rom is oreulic YeA asos Sesabamisi iqneba. Semdeg daviTvliT
im oTxeulebis raodenobas, romelic YeA asos Sesabamisi oreuliT iwyeba. qarTul enaSi gamokvleulia,
Tu romeli aso gvxvdeba yvelaze xSirad YeA asos Semdeg. analogiurad da ramodenime eqsperimentis
- kriptografia.
anbansa da enas centraluri roli eniWeba informatikaSi, radgan damtkicda, rom nebismieri amocana
SeiZleba raRaca enaSi Caiweros da misi amoxsnis Zieba am enaSi garkveuli sityvebis Ziebis tolfasia.
informatikaSi Zalian mniSvnelovania e.w. YorobiTi anbaniA B = {0, 1}. nebismieri informacia SeiZleba
magaliTad, Tu mocemulia raime naturaluri ricxvi n ∈ N, misi Cawera orobiT kodSi Semdegi algo-
riTmiT SeiZleba:
52 Tavi VI monacemTa kodireba, anbani, ena da gramatika
4: }
5: else if (n = 1)
6: {
7: amobeWde 1 da algoriTmi daasrule
8: }
9: else
10: {
11: Binary(b n2 c) (es procedura gaimeore b n2 c monacemisaTvis)
n
12: amobeWde gayofisas miRebuli naSTi
2
(Tu n kentia, amobeWde Y1A) ;
13: }
aRsaniSnavia, rom es algoriTmi rig-rigobiT amobeWdavs Sesabamisi naturaluri ricxvis orobiT cifrebs
(anu bitebs).
4: }
5: else if (n = 0)
6: {
7: amobeWde 0 da algoriTmi daasrule
8: }
9: else
10: {
n
11: amobeWde gayofisas miRebuli naSTi
2
(Tu n kentia, amobeWde Y1A) ;
(Tu n luwia, amobeWde Y0A) ;
13: }
savarjiSo 1.11: gadaiyvaneT orobiT kodSi Semdegi ricxvebi: 13, 127, 17, 8, 16, 0.
Tu gvaqvs mocemuli orobiT kodSi Cawerili raRac ricxvi, magaliTad a = 1101102 , misi calkeuli
jvnivac, an indeqsebi dawyebuli erTidan, magram standartulad miRebulia zemoT naCvenebi numeracia.
analogiurad SeiZleba nebismieri ricxvis nebismieri anbaniT Cawera. Tu mocemulia k asoiani anbani,
4: }
5: else
6: {
7: Binary(b nk c) (es procedura gaimeore b nk c monacemisaTvis)
n
8: amobeWde gayofisas miRebuli naSTi
k
9: }
savarjiSo 1.12: wina savarjiSoSi moyvanili ricxvebi CawereT rvaobiT, TeqvsmetobiT da orobiT kodebSi.
savarjiSo 1.13: dawereT algoriTmi, romelic orobiT kodSi Caweril ricxvs aTobiT kodSi gadaiyvans.
yvelasaTvis kargadaa cnobili, Tu rogor SeiZleba saaTis cnoba. Tu dRe-RameSi 24 saaTs vivaraudebT
(rac sayovelTaodaa miRebuli), maSin pirveli saaTis Semdeg iqneba 2, mas Semdeg 3, 4, 5, ..., 23 da 23 saaTis
Semdeg dgeba 24, anu 0 saaTi. aqedan gamomdinare, gvaqvs Semdegi wesi: 0 + 1 = 1, 1 + 2 = 3, ..., 22 + 1 = 23,
23 + 1 = 0 da mTeli cikli Tavidan iwyeba. radgan sul gamoyenebulia 24 ricxvi 0, 1, ..., 23, amboben, rom
gvaqvs gansazRvruli mimateba 24-is moduliT. ase rom, 12+7 mod 24 = 19, 23+1 mod 24 = 0, 12+15 mod 24 = 3,
503 + 20167 mod 24 = 6. zogadi principi aseTia: Cveulebrivad vkrebT or ricxvs, Sedegs vyofT 24-ze da
viRebT naSTs.
analogiurad SeiZleba ganisazRvros agreTve gamravlebac: or ricxvs vamravlebT erTmaneTze, Sedegs
vyofT 24-ze da viRebT naSTs. magaliTad, 3 · 7 mod 24 = 21, 103 · 17 mod 24 = 23.
Cvens simravleSi Z24 = {0, 1, 2, 3, , 4..., 23} gvxvdeba agreTve e.w. Sekrebis operaciis mimarT neitraluri
elementi 0, romelic mimatebisas ricxvs ar cvlis: a + 0 mod 24 = a. aqedan gamomdinare SeiZleba davsvaT
Semdegi SekiTxva: arsebobs Tu ara Z24 simravleSi yoveli a ∈ Z24 elementis Sebrunebuli elementi −a ∈
Z24 ? raime elements misi Sebrunebulis mimatebiT unda viRebdeT neitralur elements: a+(−a) mod 24 = 0.
magaliTad, 11 + 13 mod 24 = 0, 23 + 1 mod 24 = 0, 7 + 17 mod 24 = 0 da a.S. aqedan vaskvniT, rom a ∈ Z24 ricxvis
ufro rTuladaa saqme, rodesac raime a ∈ Z24 ricxvis Sebrunebuls veZebT gamravlebis mimarT: vipovnoT
Tu 13 · 3 mod 24 = 1 da aqedan vaskvniT, rom 13 ∈ Z24 ricxvis Sebrunebuli unda iyos isev 3 ∈ Z24 (da
piriqiT), magram ricxvis 6 ∈ Z24 Sebrunebuls verafriT ver vipovniT. aqedan vaskvniT, rom gamravlebis
sainteresoa is faqtic, rom 24 moduliT ariTmetikaSi ramodenime ricxvi SeiZleba iyos Tavisi Tavis
Sebrunebuli: 1 · 1 mod 24 = 1 da 7 · 7 mod 24 = 1. aqedan vaskvniT, rom 7 ∈ Z24 ricxvis Sebrunebuli unda
savarjiSo 2.15: gamoiangariSeT (−13) mod 24, (−1) mod 24, 13−1 mod 24, −13 mod 24, 17−1 mod 24.
savarjiSo 2.16: daadgineT, Z24 simravleSi romel ricxvebs moeZebnebaT gamravlebis mimarT Sebrune-
savarjiSo 2.17: gamoiangariSeT (−13) mod 27, (−1) mod 9, 13−1 mod 27, −13 mod 31, 17−1 mod 41.
savarjiSo 2.18: gamoiTvaleT 13 + 17 mod 34 , 9 + 23 mod 4 , 23 · 5 mod 32 , 5 · 17 mod 47.
Teorema 2.1: a ∈ Zk ricxvs moeZebneba Sebrunebuli gamravlebis mimarT maSin da mxolod maSin, Tu a da
k ricxvebi urTierTmartivia.
bunebrivia Semdegi SekiTxva: raSi SeiZleba gamoviyenoT modularuli ariTmetika? es sakiTxi didi
xnis win daisva da garkveuli periodis ganmavlobaSi iTvleboda kidec, rom modularuli ariTmetika
da, ufro zogadad, sasruli struqturebis Seswavla (magaliTad sasruli rgolebi an velebi, sasruli
jgufebi da sxva) mxolod Teoriuli xasiaTis iyo da XIX saukuneSi miRebuli didi Sedegebis Semdeg
(rogoricaa, magaliTad, galuas Teoriaze dayrdnobiT mexuTe an meti rigis gantolebebisaTvis amo-
naxsnis formulebis ararsebobis mtkiceba an zemoT naxsenebi fargliTa da saxazaviT agebis klasikuri
warmodgena, rogoricaa naturaluri, racionaluri da, miT umetes, iracionaluri ricxvebi. aqedan
erT-erTi gamosavalia sasruli struqturebis ariTmetikis gamoyeneba: Cven viRebT raime rgols er-
beli iyos, riTac usasrulo struqturis - Cveulebrivi ariTmetikis - simulacia gaxdeba SesaZlebeli
sasruli struqturebiT. ra Tqma unda, modularuli ariTmetika yovelTvis ar mogvcems YsworA pa-
suxs - garkveul SemTxvevebSi SesaZlebelia iseTi didi ricxvebi dagvWirdes, romlebic Zk sasrul
simravleSi aRar moTavsdeba, magram es Secdomebi praqtikaSi SesaZlebelia did rols ar TamaSobdes.
amas garda, arsebobs meTodebi (magaliTad, Cinuri Teorema naSTebis Sesaxeb), riTac or an met patara
rgolSi Catarebuli gamoTvlidan ufro did rgolSi Catarebuli gamoTvlis gamoangariSeba SeiZleba.
magram es yvelaferi kompiuteruli algebris sakiTxebia, rasac Cven dawvrilebiT sxva kursebSi ganvi-
xilavT.
ganvixiloT orobiT kodSi Cawerili ricxvebi A = (a3 a2 a1 a0 ) = (1101) da B = (b3 b2 b1 b0 ) = (1110). aTobiT
0 1 1 0 1 13
0 1 1 1 0 14
x4 x3 x2 x1 x0
pirvel rigSi vkrebT YdabalA (marjvena) bitebs da viRebT: x0 = 1 ⊕ 0 = 1 (aq ⊕ orobiT, anu oris modu-
liT mimatebas niSnavs). rogorc aTobiTSi, orobiT mimatebaSic unda davixsomoT 1 an 0. am SemTxvevaSi
jamis Semdgomi bitis gamosaangariSeblad gveqneba: x1 = 0⊕1⊕c1 = 0⊕1⊕0 = 1 (unda SevkriboT Sesabamisi
bitebi da wina bijSi YdaxsomebuliA cifri). am bijSi vixsomebT c2 = 0, radgan x1 jamSi ganxilul sam
SesakrebSi orze naklebi 1 Segvxvda. Semdeg viTvliT x3 = 1 ⊕ 1 ⊕ d2 = 1 ⊕ 1 ⊕ 0 = 0, xolo daxsomebuli
0 1 1 0 1 13
0 1 1 1 0 14
1 1 0 1 1 27
savarjiSo 3.20: axseniT, ratom aris saWiro mxolod xn+1 cvladis gamoTvla da ara, magaliTad, xn+2 an
xn+3 ?
savarjiSo 3.21: daamtkiceT zemoT moyvanili algoriTmis siswore da gamoiTvaleT misi bijebis raode-
noba.
savarjiSo 3.22: Sekrebis analogiurad dawereT qveS miweriT gamravlebis algoriTmi, daamtkiceT misi
advili dasanaxia, rom Tu mocemuli gvaqvs n bitiani ricxvebi da SegviZlia mxolod am sigrZis ricxve-
bis warmodgena, miviRebT 2n moduliT ariTmetikas, anu gamoTvlas CavatarebT Z2n simravleSi, radgan
Tu ganvixilavT 8 bitian ricxvs 111111112 = 25510 , vnaxavT, rom 111111112 +1 mod 28 = 0, anu −255 mod 256 = 1.
zogadad, Tu mocemulia n bitiani ricxvi 111...1, romlis bitebi yvela tolia 1, mimatebis mimarT misi
savarjiSo 3.23: daamtkiceT zemoT moyvanili gamonaTqvami: Tu mocemulia n bitiani ricxvi 111...1, rom-
lis bitebi yvela tolia 1, mimatebis mimarT misi Sebrunebuli ricxvi iqneba 1.
axla ki ganvixiloT raime sxva 8 bitiani ricxvi, magaliTad x = 11010010. rogor gamoviangariSoT misi
yovelive zemoT Tqmulidan gamomdinare, logikuri iqneboda jer gamogveangariSebina raRac ricxvi y,
romelic Semdegi Tvisebis matarebelia: x + y = 11111111, ris Sedegadac miviRebT: −x mod 2n = y + 1.
rogor SeiZleba Sesabamisi y ricxvis gamoangariSeba? araa rTuli saCvenebeli, rom y = 00101101, anu
iseTi ricxvi, romlis bitebSi x ricxvis bitis sawinaaRmdego (anu uaryofa) weria: Tu weria 0, viRebT
1 da Tu weria 1, viRebT 0. zogadad, Tu mocemulia raime ricxvi xn−1 ...x1 x0 , misi YSebrunebuli ricxviA
gia TamaSebSi
rogorc vnaxeT, nebismieri informaciis (nebismier anbanze agebuli sityvisa Tu enis) kodireba SeiZleba
ricxvebiT: anbanis TiToeul asos SevusabamebT raime naturalur ricxvs da, aqedan gamomdinare, nebis-
mier sityvas Sesabamisi ricxvebis kodebis mimdevrobiT Sedgenil naturalur ricxvs SevusabamebT.
radgan nebismieri naturaluri ricxvi SegviZlia gadaviyvanoT orobiT sistemaSi, zemoT Tqmulidan
informaciis kodireba orobiT kodSi farTod gamoiyeneba praqtikaSi. Tanamedrove gamoTvliTi siste-
mebi mTlianad am princips efuZneba da, sxva operaciebTan erTad, modularul ariTmetikaze dayrdnobiT
es, ra Tqma unda, orobiTi sistemis yvelaze didi da mniSvnelovani gamoyenebis sferoa. qvemoT Cven ufro
naklebad cnobil, magram saintereso gamoyenebas ganvixilavT, rac TamaSebSi momgebiani strategiis
SemuSavebas exeba.
TamaSi asanTebiT
mocemulia: x1 = 3, x2 = 9, x3 = 6.
am TamaSSi momgebiani strategia arsebobs, anu iseTi algoriTmi, romliTac erT-erTi moTamaSe yovelTvis
moigebs.
biti, magram Cven samive ricxvs erTsa da imave sigrZis sityvebad vwerT: Tu raime orobiTi ricxvi moklea,
samive ricxvs vwerT erTmaneTis qvemoT da TiToeul svetSi erTianebis raodenobas viTvliT:
6.4 orobiTi kodirebis gamoyenebis magaliTebi da momgebiani strategia TamaSebSi 57
a1 a2 ... an
b1 b2 ... bn
c1 c2 ... cn
Tu yvela svetSi erTianebis raodenoba luwia, maSin pirveli svla mowinaaRmdeges unda davuTmoT.
am SemTxvevaSi, Tu mowinaaRmdege erTi konidan ramodenime asanTs aiRebs, erTianebis raodenoba erT
Tu erT-erT svetSi mainc erTianebis raodenoba kentia, Cven erT-erTi konidan imdeni asanTi unda aviRoT,
0 0 1 1
1 0 0 1
0 1 0 1
radgan erTi sveti mainc arsebobs iseTi, sadac erTianebis raodenoba kentia, pirveli svla Cveni unda
iyos.
Tu meore konaSi (striqonSi) davtovebT ricxvs 0110, maSin yvela svetSi erTianebis raodenoba luwi
gaxdeba. amitom meore konaSi unda davtovoT 6 asanTi (anu unda aviRoT 3).
dagvrCeba:
0 0 1 1
0 1 1 0
0 1 0 1
ramdeni asanTic ar unda aiRos mowinaaRmdegem, aucileblad aRmoCndeba iseTi sveti, sadac erTianebis
0 0 0 1
0 1 1 0
0 1 0 1
erTianebis raodenoba marjvnidan meore svetSia kenti. amrigad, Tu meore konaSi davtovebT oTx asanTs,
dagvrCeba:
0 0 0 1
0 1 0 0
0 1 0 1
mowinaaRmdegis mier ramodenime asanTis aReba isev igive efeqts gamoiwvevs: erT-erT svetSi mainc gaCn-
deba kenti raodenobis erTiani. vTqvaT, man aiRo meore konidan yvela asanTi:
0 0 0 1
0 0 0 0
0 1 0 1
Tu Cven mesame konaSi davtovebT erT asanTs, erTianebis raodenoba kvlav yvelgan galuwdeba:
0 0 0 1
0 0 0 0
0 0 0 1
mowinaaRmdege iZulebulia, erT-erTi konidan darCenili erTi asanTi aiRos:
0 0 0 1
0 0 0 0
0 0 0 0
bolo svliT Cven vigebT.
amrigad, garkveul viTarebebSi sasurvelia monacemTa orobiT kodSi Cawera da Semdeg orobiT anbanze
savarjiSo 4.24: dawereT algoriTmi, romelic am TamaSSi momgebiani strategiiT imoqmedebs, anu mo-
cemuli sami ricxvisaTvis gansazRvravs, TviTon daiwyos Tu ara da Semdeg yovelTvis moigebs.
58 Tavi VI monacemTa kodireba, anbani, ena da gramatika
savarjiSo 4.25: daamtkiceT, rom Tu TamaSi damTavrebuli araa da yvela svetSi erTianebis raodenoba
luwia, erTi svlis Semdeg aucileblad gaCndeba erTi sveti mainc kenti raodenobis erTianiT.
axla ki ganvixiloT kazinoSi ruletis momgebiani strategia. pirvel rigSi virCevT romelime fers
(magaliTad, Savs) da yovel jerze vdebT raRaca Tanxas. Tu es feri movida, vigebT dadebuli Tanxis
ormag raodenobas. Tu Cveni feri ar movida, dadebuli Tanxa ikargeba. imisaTvis, rom am TamaSisaTvis
1. pirvel jerze Cvens ferze vdebT a1 odenobis Tanxas. jamSi daxarjuli Tanxaa a1 .
2. Tu Cveni feri movida, viRebT mogebul Tanxas 2a1 da yvelafers viwyebT Tavidan.
3. Tu Cveni feri ar movida, meore jerze vdebT a2 odenobis Tanxas. jamSi Cadebuli Tanxa iqneba a1 +a2 .
4. Tu Cveni feri movida, viRebT mogebul Tanxas 2a2 da yvelafers viwyebT Tavidan.
5. Tu Cveni feri ar movida, mesame jerze vdebT a3 odenobis Tanxas. jamSi Cadebuli Tanxa iqneba
a1 + a2 + a3 .
6. me-n-e jerze vdebT an odenobis Tanxas. jamSi Cadebuli Tanxa iqneba a1 + a2 + · · · + an−1 + an . Tu Cveni
7. radgan aqamde Cadebuli Tanxa iyo a1 + a2 + · · · + an−1 + an , sul mogebuli gveqneba 2an − (a1 + a2 +
· · · + an−1 + an ) = an − (a1 + a2 + · · · + an−1 ) odenobis Tanxa.
Tu 2an −(a1 +a2 +· · ·+an−1 +an ) = an −(a1 +a2 +· · ·+an−1 ) < 0, maSin daxarjuli Tanxa mogebulze meti iqneba,
anu TamaSs wavagebT. Cveni amocanaa a1 , a2 , ..., an , ... mimdevroba ise SevarCioT, rom an −(a1 +a2 +· · ·+an−1 ) > 0.
i n n
erTi SesaZleblobaa ai = 2 . am SemTxvevaSi an = 2 da (a1 + a2 + · · · + an−1 ) = 2 − 1. aqedan gamomdinare,
n n
an − (a1 + a2 + · · · + an−1 ) = 2 − (2 − 1) = 1. ese igi, am strategiiT (yovel jerze dadebuli Tanxis
gaormagebiT) 1 erTeuls movigebT.
Tu (ai )∞
i=1 mimdevrobas ise SevarCevT, rom an − (a1 + a2 + · · · + an−1 ) = n, maSin Cveni feris mosvlaze vigebT
imden Tanxas, ramdenjerac mogviwia Tanxis dadeba.
an − (a1 + a2 + · · · + an−1 ) = n.
7: }
savarjiSo 4.28: rogor ggoniaT, ra xerxiT axerxebs kazino am strategiisagan Tavis dacvas?
6.5 formaluri ena da gramatika 59
TamaSta TeoriaSi arsebobs aqsioma, romlis mixedviTac SemTxveviT TamaSSi (anu iseTSi, sadac aqtu-
aluri svla araa daokidebuli arcerT winaze - aseTia, magaliTad, kazinoSi TiTqmis yvela TamaSi
ruletis CaTvliT) momgebiani strategia ver iarsebebs SezRuduli biujetis pirobebSi. es ki imas niS-
navs, rom momgebiani strategia mxolod SeuzRudavi Tanxebis pirobebSia SesaZlebeli. radgan bunebaSi
yvela resursi (da maT Soris fulic) SezRudulia, aseTi strategia praqtikulad ar arsebobs.
ganmarteba 5.2: Tu mocemulia raime anbani A, maSin nebismier simravles L ⊂ A∗ am anbanze agebuli ena
ewodeba.
erT-erT magaliTad SegviZlia ganvixiloT qarTuli ena, romelic qarTuli anbanis im sityvebisgan
Sedgeba, romlebsac Cvens enaSi azri aqvs. es sasruli simravle iqneba, romelic asobiT aTasi sityva-
formisagan Sedgeba.
erT-erTi aqtualuri amocanaa, magaliTad, bunebrivi enisaTvis marTlweris Semowmeba ( spell checking).
Tu mocemuli sityvisTvis imis dadgena gvinda, sworadaa igi dawerili Tu ara, erT-erTi saSualeba
iqneba qarTuli enis srul bazaSi gadamowmeba, gvxvdeba Tu ara es sityva. ra Tqma unda, amis teqnikuri
realizacia SedarebiT martivia, Tu qarTuli enis yvela sityva-formisagan Semdgari dalagebuli sim-
ravle gveqneba. magram siZnele swored aseTi simravlis Seqmnaa, sadac arc erTi sityva-forma ar iqneba
gamorCenili.
meore meTodi iqneboda ZiriTadi formebis (qarTuli sityvebis fuZeebis) simravlis Seqmna da mere gra-
iqneboda aucilebeli am sityva-formis bazaSi Cawera. sakmarisia bazaSi gvqondes fuZe YadamianA da wesi,
rogor dagenerirdeba sityva, kerZod [fuZe] + YiseburiA. maSin sistema mixvdeboda, rom Cawerili sityva
SeiZleba dagenerirdes zemoT moyvanili wesiT da mixvdeboda, rom igi uSecdomodaa Cawerili.
sityvaTa generaciis aseT wess enis (formaluri) gramatika ewodeba. dReisaTvis qarTuli enis for-
maluri aRweris problema bolomde gadaWrili araa, riTac Cveni enis avtomaturi damuSavebis sisteme-
bunebrivi enebis damuSavebis garda farTod gamoiyeveba e.w. formaluri enebi da maTi gramatika. for-
maluri enis magaliTia nebismieri daprogramebis ena. amas garda, nebismieri maTematikuri amocanis
am amocanis amoxsna sxvadasxva gziT SeiZleba, maT Soris sufTa algebruliT. erT-erTi sxva gza iqne-
P = {(1, 1), (1, 2), (1, 3), (1, 4), ..., (7, 7), (7, 14), ..., (7, −14), ...}
radgan es simravle usasruloa, misi Camowera SeuZlebeli iqneba. magram SesaZlebelia misi formalu-
rad aRwera:
P = {(a, b) | b = k · a; k ∈ Z, a, b ∈ N}.
zeda magaliTSi moyvanili amocanis amoxsna Semdegnairadac SeiZleba CamovayaliboT: mocemuli (a, b)
wyvilisaTvis gaarkvieT, WeSmaritia Tu ara gamonaTqvami (a, b) ∈ P .
rogorc vxedavT, erTi da igive amocanis Camoyalibeba sxvadasxvanairad SeiZleba. zemoT moyvanil ma-
galiTSi Cven amocanis amonaxsnaTa mTeli simravle P aRvwereT da mere davsviT SekiTxva, Sedis Tu ara
ricxvTa garkveuli wyvili am simravleSi. sxva sityvebiT rom vTqvaT, am amocanis monacemebi da amo-
naxsnebi raRac enaze aRvwereT da mere vcdilobT imis dadgenas, ekuTvnis Tu ara mocemuli monacemi
amonaxsnTa simravles.
60 Tavi VI monacemTa kodireba, anbani, ena da gramatika
iseT amocanebs, romelTa pasuxia mxolod YkiA an YaraA, YgadawyvetilebisA amocana ewodeba. aseTi tipis
amocanebisTvis SegviZlia amonaxsnTa simravlis Seqmna (an aRwera) da mere monacemidan gamomdinare
maTematikaSi kargadaa cnobili usasrulo simravleebis aRweris meTodebi. magaliTad, {a|a = 2k, k ∈ N}
(luw ricxvTa simravle), an {b|b = p + 3, p martivia }.
analogiurad SegviZlia usasrulo enebis aRwerac. magaliTad, e.w. palindromebis ena Semdegnairad
SeiZleba aRiweros (palindromi iseT sityvas ewodeba, romelic winidan da uknidan erTnairad ikiTxeba):
P alΣ = {w|w = wR , w ∈ Σ∗ }
SeniSvna: xSirad palindromebs ara marto TiToeul sityvas, aramed iseT winadadebsac uwodeben, ro-
melTa wakiTxva orive mxridan erTnairad SeiZleba (magaliTad Yai iaA), magram Cven mxolod calkeuli
sityvebiT SemovifarglebiT - nebismieri winadadeba xom ise SegviZlia ganvixiloT, rogorc calkeuli
sityva.
savarjiSo 5.29: moiyvaneT qarTul, inglisur da orobiT anbanze agebuli palindromebis magaliTebi
erTi sakiTxia raRac usasrulo enis garkveuli sasruli meTodebiT aRwera da meore - iseTi meqanizmis
aseT generators am enis gramatikas uwodeben. P alB enis gramatika orobiT anbanze Sedgenil enaze
• , 0 da 1 palindromia;
• mxolod am weswbiT Sedgenili sityvebi (da arc erTi sxva) qmnian palindromebs.
1. S→
2. S→0
3. S→1
4. S → 0S0
5. S → 1S1
4. Tu S enis elementia, amave enis elementi iqneba mas Tu winidan da uknidan mivuwerT 0
5. Tu S enis elementia, amave enis elementi iqneba mas Tu winidan da uknidan mivuwerT 1
cxadia, rom am wesebiT Seqmnili elementi palindromi iqneba: pirveli sami wesiT pirdapir Seiqmneba
sityva, romelic aSkarad palindromia (carieli sityva palindromia: masSi ar moiZebneba iseTi pozicia
i, rom [i] 6= {i}). amas garda, Tu P palindromia, aseve palindromi iqneba 0P 0 da 1P 1 (wesebi 4 da 5).
magram saidan viciT, rom es gramatika yvela palindroms warmoSobs, anu ar arsebobs iseTi palindromi,
romelic am wesebiT ar warmoiSveba? amis Cveneba maTematikuri induqciiT SeiZleba: Tu w sityva palin-
dromia da |w| = 0, igi carielia da zeda gramatikis pirveli wesiT generirdeba; Tu |w| = 1, maSin an w = 0
an w=1 da igi generirdeba an meore, an mesame wesiT.
axla davuSvaT, rom yvela palindromi, romlis sigrZe ≤ n am gramatikiT warmoiSveba da ganvixiloT
raRac palindromi w, sadac |w| = n + 1. cxadia, rom an w = 1u1 an 0u0, sadac u palindromia da |u| ≤ n.
6.6 formaluri enebisa da gramatikis gamoyenebis saSualebebi 61
induqciis daSvebis Tanaxmad, u sityva zeda gramatikiT generirdeba da, aqedan gamomdinare, w sityvac
ganvixiloT kidev erTi magaliTi: L = {0n 1n |n ∈ N0 } enis aRmweri gramatika Semdegnairad SeiZleba
CavweroT:
1. S → ;
2. S → 0S1
rogorc moyvanili magaliTebidan SeiZleba davaskvnaT, gramatikis wesebi garkveuli formiT SeiZleba
Caiweros. S e.w. Ysawyisi simboloaA: pirveli wesi gveubneba, Tu rogor iwyeba sityvis warmoeba. aq
0,1 da e.w. terminalebia: carieli sityva da anbanis elementebi. terminalebi imitom ewodebaT, rom
maTi Semdgomi YgaSlisA wesebi aRar arsebobs: simbolo dafiqsirdeba da yoveli Semdgomi gamoTvlisas
ucvleli rCeba, gansxvavebiT e.w. YaraterminalisganA, Cvens SemTxvevaSi simbolo S, romelic yoveli
gamoTvlisas YgaiSlebaA. ase, magaliTad, sityva 00001111 Semdegnairad gaiSleba: sawyisi araterminali
S meore wesis Tanaxmad gardaiqmneba sityvad 0S1, mere isev meore wesis Tanaxmad igive gardaqmniT 00S11,
Semdeg 000S111, Semdeg 0000S1111 da bolos - pirveli wesis Tanaxmad - 0000 1111 = 00001111.
savarjiSo 5.30: aRwereT gramatika, romelic YsworadA dasmul frCxilebis enas agenerirebs (magali-
Tad, sworadaa dasmuli frCxilebi Y(()(()))A sityvaSi, magram arasworad sityvaSi Y(()))((())A.
Cvens mier ganxiluli gramatikebi e.w. YukonteqstoA enebs aRwers da amitom maTac ukonteqsto gramatika
ewodebaT. aseTi tipis gramatikaSi wesebis marcxena mxares mxolod erTi araterminaluri simbolo
dgas (aqedan gamomdinareobs saxeli YukonteqstoA - radgan mxolod erTi araterminaluri simbolo
mniSvnelovani faqtia is, rom ukonteqsto gramatikas yvela enis aRwera ar SeuZlia. magaliTad, ena
{an bn cn |n ∈ N0 } am tipis gramatikiT ver aRiwereba. da zogadad: ar arsebobs iseTi gramatika, romelic
yvela enas aRwers. ufro metic: damtkicebulia, rom arsebobs iseTi ena, romelic verc erTi gramatikiT
ver aRiwereba.
aseT sakiTxebs Teoriuli informatika Seiswavlis, rasac Cven momdevno kursebis farglebSi dawvrilebiT
ganvixilavT.
rogorc aqamde aRiniSna, yoveli gadawyvetilebis amocana SeiZleba ganvixiloT, rogorc raime anbanze
mocemulia mTel ricxvTa wyvili (x, y). aris Tu ara igi 28x−12y = 0 orcvladiani gantolebis amonaxsni?
cxadia, es gadawyvetilebis amocanaa: misi yoveli pasuxi iqneba an YkiA, an YaraA. misi ena Sedgeba yvela
amonaxsnisgan:
a 3
L= (a, b)|a, b ∈ Z, =
b 7
aqedan gamomdinare, gadawyvetilebis amonaxsnis amoxsna SeiZleba ganvixiloT rogorc misi Sesabamisi
enaSi (amonaxsnTa simravleSi) monacemis Zebnad. Tu es ena aRiwereba raime gramatikiT, misi Sesabamisi
enasa da gramatikas kidev erTi didi gamoyeneba aqvs kompilatorebSi, maT agebasa da, zogadad, TeoriaSi.
yoveli programa, romelic iwereba raime daprogramebis enaze (adamianisTvis gasageb, e.w. maRali donis
enaze), unda iqnas gadaTargmnili manqanur kodebSi (e.w. dabali donis enaze), rac adamianisTvis sakmaod
monotonuri, mosawyeni da SecdomebiT aRsavse procesi iqneboda. amitom xdeba programebis avtomaturi
YkompilaciaA, anu gadaTargmna. aq farTod iyeneben enaTa formalur aRwerasa da gramatikis safuZvelze
bis aRmosaCenad, an erTi enis struqturis meore enis struqturaze gadasatanad, mxolod aq ar Semoi-
farglebian mxolod ukonteqsto gramatikebiT, romelTa magaliTebic Cven ganvixileT, aramed iyeneben
mexuTe TavSi Cven ganvixileT monacemTa kodirebis meTodebi da vnaxeT, Tu rogor SeiZleba maTi ga-
Semdeg vnaxeT, Tu rogor SeiZleba modularuli ariTmetikis gamoyenebiT usasrulo sistemebis simula-
cia sasruliT minimaluri danakargebis gaTvaliswinebiT da vaCveneT, rogor igeba orobiTi ricxvebis
bolos ganvmarteT formaluri ena, misi Sesabamisi gramatika da mniSvnelovani gamoyenebis magaliTebi.
Tavi 7
mimarTebebi da dalageba
7.1 mimarTebebi
da b erTmaneTTan megobroben}.
rogorc vxedavT, R simravle A simravleSi raRaca kavSiris, anu mimarTebis aRmniSvnelia da mis ele-
A × B = {(1, a), (1, b), (1, c), (2, a), (2, b), (2, c), (3, a), (3, b), (3, c), (4, a), (4, b), (4, c)}.
aRsaniSnavia, rom aq mniSvneloba aqvs elementebis Tanmimdevrobas: pirvel adgilzea A simravlis ele-
magaliTad, Tu A = {a1 , a2 , a3 }, A×A = {(a1 , a1 ), (a1 , a2 ), (a1 , a3 ), (a2 , a1 ), (a2 , a2 ), (a2 , a3 ), (a3 , a1 ), (a3 , a2 ), (a3 , a3 )}.
savarjiSo 1.1: ganvixiloT Semdegi amocana: mocemulia n ∈ N. SeadgineT A × A, sadac A = {a1 , a2 , ..., an }.
ra aris am amocanis monacemi? ra unda iyos misi Sedegi? dawereT algoriTmi, romelic am amocanas
gadaWris.
ganmarteba 1.2: Tu mocemulia raime ori simravle A da B (xSirad A = B ), maSin R ⊂ A×B simravles A
da B simravleebze gansazRvruli mimarTeba ewodeba.
63
64 Tavi VII mimarTebebi da dalageba
A = {qarTli, kaxeTi, raWa, imereTi, samegrelo } da B = {ozurgeTi, oni, foTi, agara, zugdidi, vani,
R2 ={ (qarTli, agara), (kaxeTi, Telavi), (kaxeTi, gurjaani), (raWa, oni), (imereTi, vani),
ganmarteba 1.3: nebismier R ⊂ A×B (xSir SemTxvevaSi A = B) mimarTebas SeiZleba qondes Semdegi Tvise-
bebi::
tranzituli ewodeba.
sruli, radgan SeiZleba moiZebnos ori iseTi adamiani a, b ∈ A, romelic erTmaneTTan ar megobrobs da
amitom (a, b) ∈
/ R.
meore mimarTeba R1 (winaprebis ganmsazRvreli) tranzitulia: Tu a-s winaparia b ((a, b) ∈ R1 ) da b-s wina-
paria c ((b, c) ∈ R1 ), a-s winaparia c anu (a, c) ∈ R1 .
es mimarTeba aseve antisimetriulia: Tu (a, b) ∈ R1 ⇔ (b, a) 6∈ R1 .
mesame mimarTeba R2 antisimetriuli da arasrulia: R2 ar Seicavs arc erT wyvils, romelSic Sedis
ozurgeTi.
xolo (a, b) ∈ R ki a elementidan b elementSi mimarTuli isriT (nax. 7.1 (a)). Tu (b, b) ∈ R, es grafikulad
b elementis Sesabamisi rgolidan gamomavali da igive rgolSi Semavali isriT gamoixateba (nax. 7.1 (b)).
Tu A = {a, b, c, d, e}, maSin R = {(a, a), (a, b), (b, b), (b, a)(c, a), (c, d), (d, e), (e, b), (e, c), (e, d)} ise SeiZleba war-
magaliTad, Tu mocemulia cocxal organizmTa simravle A, maSin R0 = {(a, b)|a da b orive xerxemliania}
ekvivalenturobis mimarTebaa, radgan igi refleqsuri, simetriuli da tranzitulia.
savarjiSo 1.4: daamtkiceT, rom zemoT moyvanili mimarTeba R0 marTlac refleqsuri, simetriuli da
tranzitulia.
7.1 mimarTebebi 65
ekvivalenturobis mimarTeba simravles e.w. Yekvivalenturobis klasebadA yofs, anu iseT qvesimravlee-
bad, sadac erTmaneTis ekvivalenturi (anu garkveuli TvalsazrisiT msgavsi) elementebi Sedis. sxva
magaliTad, Tu mocemulia mimarTeba R = {(a, b)| a da b orive luwia an a da b orive kentia}, igi naturalur
ricxvTa N simravleSi or qvesimravles gamoyofs - luw da kent ricxvTa qvesimravleebs (klasebs): N1 =
{ai |(ak , al ) ∈ R da orive luwia}, N2 = {ai |(ak , al ) ∈ R da orive kentia}.
aRsaniSnavia, rom es erTmaneTis ekvivalenturi anu toli elementebi mocemuli mimarTebiTaa gansazRv-
ruli. sxva mimarTebas SeiZleba sxva ekvivalenturi elementebi gamoeyo. amis magaliTia igive A sim-
ravleze gansazRvruli R0 = {(a, b) | a da b orive iyofa 3-ze an a da b ricxvidan erTi mainc ar iyofa
3-ze }.
savarjiSo 1.5: grafikulad gamoxateT bolos mocemuli mimarTeba R0 ise, rogorc es wina magaliTSi
moxda.
raime A simravlis ekvivalenturobis klasebi Semdegnairad aRiniSneba: [a] = {b | (a, b) ∈ R}, sadac R aris
A simravlis ekvivalenturobis mimarTeba.
magaliTi, romelic sam qvesimravles gamohyofs. TiToeul aseT klasSi erTmaneTis ekvivalenturi ele-
mentebia.
axla ki ganvixiloT ori naturaluri ricxvi, romelic aTobiT anbanSia Cawerili: 307 da 509. Cven
viciT, rom 307 < 509. am ori ricxvis aseTi mimarTeba sadRac unda iyos gansazRvruli (analogiurad
66 Tavi VII mimarTebebi da dalageba
Cven SegveZlo gangvesazRvra 509 < 307. Cven viciT, rom 0 < 1 < 2 < 3 < 4 < 5 < 6 < 7 < 8 < 9. magram am
cifrebis aseTi mimarTeba cxadi araa, esec viRacis mieraa dadgenili da Semdeg sayovelTaod miRebuli.
R ={
(0, 1), (0, 2), (0, 3), (0, 4), (0, 5), (0, 6), (0, 7), (0, 8), (0, 9)
(1, 2), (1, 3), (1, 4), (1, 5), (1, 6), (1, 7), (1, 8), (1, 9)
(2, 3), (2, 4), (2, 5), (2, 6), (2, 7), (2, 8), (2, 9)
(3, 4), (3, 5), (3, 6), (3, 7), (3, 8), (3, 9)
(4, 5), (4, 6), (4, 7), (4, 8), (4, 9)
(5, 6), (5, 7), (5, 8), (5, 9)
(6, 7), (6, 8), (6, 9)
(7, 8), (7, 9)
(8, 9)
}
es mimarTeba e.w. YdalagebasA gansazRvravs, anu gvaZlevs imis wess, Tu rogor SeiZleba davalagoT
ganmarteba 1.5: srul, antisimetriul da tranzitul mimarTebas dalageba ewodeba. arasrul, anti-
Tu gvaqvs mocemuli dalageba zemoT moyvanil anbanze A, advilad SeiZleba A∗ simravlis sityvebis
savarjiSo 1.9: sityvierad axseniT, Tu ras niSnavs zeda algoriTmSi moyvanili maTematikuri Canawerebi
YTu w(|w|) < v(|v|), maSin...A da Y C(w{|w| − 1}, v{|v| − 1})A.
savarjiSo 1.10: daamtkiceT am algoriTmis siswore. gamoiTvaleT misi bijebis raodenoba, Tu |w| = |v|
da Semdeg Tu |w| =
6 |v|.
savarjiSo 1.11: dawereT, Tu risi tolia zemoT moyvanil A simravleze gansazRvruli dalagebis mimar-
Teba, romlis mixedviTac 1 ≤ 3 ≤ 2 ≤ 5 ≤ 8 ≤ 4 ≤ 0 ≤ 9 ≤ 7 ≤ 6.
savarjiSo 1.12: moiyvaneT A simravleze gansazRvruli ori sxvadasxva nawilobrivi dalagebis maga-
savarjiSo 1.16: mocemulia nebismieri simravle S , romelic Tavis mxriv raRaca simravleebisagan Sedgeba.
daamtkiceT, rom RS = {(A, B) | A, B ∈ S, A ⊆ B} nawilobrivi dalagebaa.
savarjiSo 1.17: davuSvaT, S = 2{1,2,3} , rac aris {1, 2, 3} simravlis yvela SesaZlo qvesimravlis simravle.
amowereT am simravlis yvela elementi da diagramis saxiT gamosaxeT wina savarjiSoSi gansazRvruli
savarjiSo 1.18: rogor ganisazRvreba nebismieri A simravlis raRaca R dalagebis Sedegad miRebuli
maqsimaluri elementebi?
axla ki ganvixiloT nax. 7.3 (a) -Si moyvanili mimarTeba. advili saCvenebelia, rom igi arc refleqsuri
da arc tranzitulia.
savarjiSo 1.19: aCveneT, rom nax. 7.3 (a) -Si moyvanili mimarTeba arc refleqsuri da arc tranzitulia.
am mimarTebis simravlisaTvis ramodenime axali wyvilis (an grafikulad isris) CamatebiT SeiZleba
miviRoT tranzituli mimarTeba (nax. 7.3 (b). damatebiT yvela a elementisaTvis (a, a) wyvilis damatebiT
analogiuri procedura - damatebiTi wyvilebiT gafarToveba ise, rom nebismieri mimarTeba tranzituli
da refleqsuri gaxdes, SeiZleba nebismier mimarTebaze CavataroT. miRebul mimarTebas sawyisi mimar-
ganmarteba 1.6: nebismieri R mimarTebis tranzituli da refleqsuri Caketva R∗ ewodeba iseT refleqsur
savarjiSo 1.20: dawereT algoriTmi, romelic nebismieri A sasruli simravlis raime R mimarTebisaTvis
mis refleqsur da tranzitul Caketvas gamoiangariSebs (anu Seadgens Sesabamis simravles). daamtkiceT
dalageba da nawilobrivi dalageba centralur rols TamaSobs informatikaSi, radgan amocanaTa udi-
desi nawili monacemTa raRaca wesis mixedviT dalagebis Sedegad sakmaod martivdeba.
amis magaliTia qarTul anbanze Q Semotanili dalageba a < b < g < d < · · · < j < h. Tu Cven amis safuZvelze
qarTul sityvebsac davalagebT (anu SemovitanT dalagebis wess Q∗ simravleze), qarTul leqsikonSi
raime mocemuli w sityvis moZebna gaadvildeba: leqsikons gadavSliT SuaSi da amovikiTxavT pirvelive
sityvas v. Tu w = v , sityva moZebnilia. Tu Cveni saZebni sityva am sityvis winaa (anu w < v ), maSin igive
operacias gavimeorebT leqsikonis pirvel naxevarSi (Tu v < w , viRebT meore nawils): gadavSliT am
savarjiSo 2.21: dawereT algoriTmi, romelic qarTul anbanze gansazRvruli ori sityvisaTvis w da v
gansazRvravs, w=v Tu w<v Tu v < w.
SeniSvna: es algoriTmi aTobiTSi Cawerili ricxvebis Sedarebis algoriTmis msgavsia.
savarjiSo 2.22: daamtkiceT wina savarjiSoSi moyvanili algoriTmis siswore da gamoiTvaleT misi bi-
zogadad, Tu mocemulia raime A anbani da S = {u1 , u2 , ..., un ∈ A∗ } sityvaTa dalagebuli simravle, mo-
algoriTmi L(S, w)
mocemulia: S = {u1 , u2 , ..., un ∈ A∗ } sityvaTa simravle da raRaca sityva w.
Sedegi: vipovnoT iseTi ui ∈ S , rom ui = w.
• Tu S = ∅, maSin dabeWde: Ysityva simravleSi ar moiZebnaA da algoriTmi daasrule.
savarjiSo 2.23: induqciis gamoyenebiT daamtkiceT am algoriTmis siswore. gamoiTvaleT misi bijebis
raodenoba, Tu |S| = n.
dalagebis gamoyeneba SeiZleba aseve maTematikuri sakiTxebis gadawyvetisas. Tu mocemuli gvaqvs raime
funqciis mniSvnelobebi garkveul wertilebSi, misi minimumis an maqsimumis povna, cxadia, dalagebul
amas garda, simravleTa TanakveTa, gaerTianeba, damateba da mravali sxva operacia dalagebul sim-
savarjiSo 2.24: mocemulia dalagebuli simravleebi A da B (simartivisTvis daiSviT, rom orive sim-
ravle ricxvebs Seicavs). dawereT algoriTmi, romliTac gamoviTvliT A ∩ B. daamtkiceT misi siswore
savarjiSo 2.25: mocemulia dalagebuli simravleebi A da B (simartivisTvis daiSviT, rom orive sim-
ravle ricxvebs Seicavs). dawereT algoriTmi, romliTac gamoviTvliT A ∪ B. daamtkiceT misi siswore
savarjiSo 2.26: mocemulia dalagebuli simravleebi A da B (simartivisTvis daiSviT, rom orive sim-
ravle ricxvebs Seicavs). dawereT algoriTmi, romliTac gamoviTvliT A\B . daamtkiceT misi siswore
rac Seexeba ekvivalenturobis mimarTebis gamoyenebas, wina TavSi ganxiluli modularuli ariTmetika
0 ≡ [0] = {0, k, −k, 2k, −2k, 3k, −3k, 4k, −4k, ...},
1 ≡ [1] = {1, −1, k + 1, −(k + 1), 2k + 1, −(2k + 1), ...},
...,
k − 2 ≡ [k − 2] = {k − 2, −(k − 2), 2k − 2, −(2k − 2), ...},
k − 1 ≡ [k − 1] = {k − 1, −(k − 1), 2k − 1, −(2k − 1), ...}
saerTod, algebraSi xSirad iyeneben e-w- faqtorrgolebs, romelsac raime rgolis erT elementze gay-
ofiTa da naSTebis aRebiT warmoqmnian xolme, rac ekvivalenturobis klasebis warmoqmniT xdeba.
isTvis), aramed maTematikaSi naSTTa klasebSi, rac wina TavSi iyo ganxiluli modularuli ariTmetikis
aRweris dros, xolo dalageba ki centralur rols TamaSobs TiTqmis yvela amocanaSi: sakmarisia gan-
vixiloT sityvis dalagebul leqsikonSi Zebnis amocana da SevadaroT igi daulagebel simravleSi
Zebnas.
70 Tavi VII mimarTebebi da dalageba
Tavi 8
ganvixiloT ori funqcia: f1 (n) = n2 da f2 (n) = 100·n, n > 0. cxadia, rom f2 (n) > f1 (n), Tu 0 < n < 100. magram
Tu n > 100, maSin f1 (n) > f2 (n). ese igi, dawyebuli raRaca adgilidan, f1 (n) > f2 (n) (nax. 8.1 marcxniv). aseT
SemTxvevebSi - rodesac dawyebuli raRaca adgilidan erTi funqciis mniSvneloba yovelTvis aWarbebs
meore funqciis Sesabamis mniSvnelobas - amboben, rom f1 funqcia ufro swrafad izrdeba, vidre f2 .
magaliTad, f1 (n) = n ufro swrafad izrdeba, vidre f2 (n) = log n (aq da SemdgomSi log n = log2 n, ln n = loge n
da lg n = log10 n).
savarjiSo 1.1: f1 (n) da f2 (n) funqciebs Soris romeli izrdeba ufro swrafad? (pasuxi daamtkiceT)
savarjiSo 1.2: daamtkiceT, rom f1 (n) funqcia ufro swrafad izrdeba, vidre f2 (n), Tu:
2
1.f1 (n) = n√ , f2 (n) = 15 · n · log n; 2. f1 (n) = n3 , f2 (n) = 1983 · n; 3. f1 (n) = log n, f2 (n) = 10 log log n; 4. f1 (n) = log n2 ,
f2 (n) = 100 log n; 5. f1 (n) = n, f2 (n) = log7 n.
71
72 Tavi VIII algoriTmebis siswrafis Sefaseba
Tu mocemulia ori funqcia f1 (n), f2 (n) da ∃c ∈ N iseTi, rom dawyebuli raRaca adgilidan f1 (n) < c · f2 (n),
maSin amboben, rom f1 (n) funqciis asimptoturi zrdis rigi ar aRemateba f2 (n) funqciis asimptoturi
zrdis rigs.
am SemTxvevaSi agreTve amboben, rom f1 funqciis zrdis rigi zemodanaa SemosazRvruli f2 funqciis
zrdis rigiT, anu f2 funqciis zrdis rigi f1 funqciis zrdis rigis zeda zRvaria.
magaliTad, Tu f1 (n) = 10 · n da f2 (n) = n, f1 (n) funqciis asimptoturi zrdis rigi ar aRemateba f2 (n)
funqciis asimptoturi zrdis rigs, radgan ∃c = 11 da f1 (n) = 10 · n < c · f2 (n) = 11 · n.
asimptoturi zrdis rigi gviCvenebs, YdaaxloebiT ra siswrafiTA izrdeba mocemuli funqcia. zeda ma-
galiTSi SegveZlo agreTve dagvewera: ∃c = 1 da c · f1 (n) = 10 · n > f2 (n) = n. ase rom, erT SemTxvevaSi
f1 (n) funqciis asimptoturi zrdis rigi ar aRemateba f2 (n) funqciis asimptoturi zrdis rigs, meore
SemTxvevaSi ki piriqiT. aseT dros ityvian, rom am ori funqciis asimptoturi zrdis rigi tolia, anu
orive YdaaxloebiT erTi siswrafiT izrdebaA. Tu mocemulia ori funqcia f1 (n), f2 (n) da ∃c ∈ N iseTi,
rom dawyebuli raRaca adgilidan f1 (n) < c·f2 (n), magram 6 ∃d ∈ N iseTi, rom dawyebuli raRaca adgilidan
f2 (n) < d · f1 (n), maSin amboben, rom f2 (n) funqciis asimptoturi zrdis rigi ufro maRalia, vidre f1 (n)
funqciis asimptoturi zrdis rigi. cxadia, rom Tu f1 (n) da f2 (n) funqciebis asimptoturi zrdis rigi
tolia, SeiZleba aseve iTqvas, rom f1 (n) funqciis asimptoturi zrdis rigi ar aRemateba f2 (n) funqciis
n log n n n · log n n2 2n n!
10 3 10 30 100 1.024 3.628.800
rogorc vxedavT, am funqciaTa Soris yvelaze nela f (n) = log n funqcia izrdeba, yvelaze swrafad
ki f (n) = n!. am bolo funqciis mniSvneloba n = 20 -Tvis ukve Zalian didia - rogorc varaudoben,
2100 = 1030 Cvens samyaroSi arsebuli atomebis raodenobas aRemateba da, aqedan gamomdinare, 1015 Zalian
didi ricxvia.
savarjiSo 1.3: daamtkiceT, rom f1 (n) = 10n2 da f2 (n) = 10−6 · n2 funqciaTa asimptoturi zrdis rigi
tolia.
savarjiSo 1.4: tolia Tu ara Semdegi ori funqciis asimptoturi zrdis rigi (pasuxebi daamtkiceT):
1. f1 (n) = n2 , f2 (n) = 15 √
· n2 · log log n; 2. f1 (n) = log n3 , f2 (n) = 1983 · n; 3. f1 (n) = log2 n, f2 (n) = 10 log n; 4.
nax. 8.2 gviCvenebs ramodenime funqciis zrdis siswrafes, saidanac SeiZleba maTi asimptoturi zrdis
rigis danaxva. yvelaze nela izrdeba logariTmuli funqcia f (n) = log n; Semdegia wrfivi funqcia
f (n) = n. masze swrafad izrdeba funqcia n · log n da yvelaze didi zrdis rigi aqvs f (n) = 2n funqcias.
savarjiSo 1.5: f1 (n) da f2 (n) funqciebs Soris romlis asimptoturi zrdis rigia ufro maRali?
8.1 funqciaTa zrdis rigi 73
√
1. f1 (n) = log2 n, f2 (n)√= n; 2. f1 (n) = n3 , f2 (n) = 1983 · n2 ; 3. f1 (n) = n · log n, f2 (n) = 2log n ; 4. f1 (n) = n2 · log n,
f2 (n) = n2 ; 5. f1 (n) = 3 n, f2 (n) = (log log n)7 .
Tu mocemulia raime funqcia f (n), SegviZlia gamovyoT yvela im funqciaTa simravle O(f (n)) (ikiTxeba:
o-didi f (n)), romelTa asimptoturi zrdis rigi am f (n) funqciis zrdis rigs ar aRemateba (anu am sim-
ravleSi Semavali yvela funqcia am funqciis Yqveda zRvariaA - dawyebuli raRaca adgilidan yovelTvis
cxadia, rom O(f (n)) simravle usasruloa, amitom masSi Semavali yvela funqciis amowera SeuZlebelia.
Tu f (n) = n, maSin g(n) = 100 · n ∈ O(f (n)), radgan ∃c = 101 da c · f (n) = 101 · n > 100 · n = g(n).
analogiurad SegviZlia davamtkicoT: 100n ∈ O(n · log n), 700n ∈ O(n2 ), 200n2 ∈ O(2n ).
savarjiSo 1.6: daamtkiceT, rom 100n ∈ O(n · log n), 700n ∈ O(n2 ), 200n2 ∈ O(2n ).
lema 1.1: Tu f1 (n) funqcia ar izrdeba ufro swrafad, vidre f2 (n) funqcia, maSin O(f1 (n)) ⊂ O(f2 (n)).
d · f2 (n). g(n) ∈ O(f1 (n)). ganmartebis Tanaxmad ∃c ∈ N, g(n) < c · f1 (n). zemoT
axla ganvixiloT nebismieri
moyvanili utolobis Tanaxmad, g(n) < c · d · f2 (n). ese igi, ∃d · c ∈ N iseTi, rom g(n) < c · d · f2 (n), rac
Q.E.D.
savarjiSo 1.8: moiyvaneT f1 (n) da f2 (n) funqciebis magaliTebi, romelTaTvisac O(f1 (n)) ⊂ O(f2 (n)) da,
3. Tu O(f1 (n)) ⊂ O(f2 (n)), maSin O(f1 (n) + f2 (n)) = O(f2 (n)).
damtkiceba:
1. Tu vaCvenebT, rom O(k · f (n)) ⊂ O(f (n)) da O(k · f (n)) ⊃ O(f (n)), toloba damtkicdeba.
ganvixiloT nebismieri g(n) ∈ O(k · f (n)). ganmartebis Tanaxmad ∃c ∈ N iseTi, rom g(n) < c · k · f (n) (radgan
k naturaluria). es ki ganmartebis Tanaxmad imas niSnavs, rom g(n) ∈ O(f (n)): ∃c · k ∈ N iseTi, rom g(n) <
c · k · f (n).
axla ki ganvixiloT nebismieri g(n) ∈ O(f (n)). ganmartebis Tanaxmad ∃d ∈ N iseTi, rom d · f (n) > g(n).
Tu utolobis orive mxares gavamravlebT k ricxvze, miviebT: k · d · f (n) > k · g(n) > g(n) (radgan k ∈ N).
aqedan gamomdinare, ∃d ∈ N iseTi, rom d · (k · f (n)) > g(n). ese igi, g(n) ∈ O(k · f (n)) (O(k · f (n)) simravlis
ganmartebis Tanaxmad).
Q.E.D.
savarjiSo 1.9: daamtkiceT zemoT moyvanili lemas me-2-e da me-3-e punqtebi.
analogiurad SeiZleba nebismieri f (n) funqciis zrdis rigis qveda zRvari (omega-didi f (n)) ganvmartoT:
savarjiSo 1.10: daamtkiceT, rom f1 (n) = 10n2 da f2 (n) = 10−6 n2 funqciaTa zrdis rigis qveda zRvari
tolia.
savarjiSo 1.11: tolia Tu ara Semdegi ori funqciis asimptoturi zrdis rigis qveda zRvari? (pasuxebi
daamtkiceT):
1. f1 (n) = n2 , f2 (n) = 15 √
· n2 · log log n; 2. f1 (n) = log n3 , f2 (n) = 1983 · n; 3. f1 (n) = log2 n, f2 (n) = 10 log n; 4.
savarjiSo 1.14: daamtkiceT, rom Tu f1 (n) funqcia ar izrdeba ufro swrafad, vidre f2 (n) funqcia, maSin
savarjiSo 1.15: moiyvaneT f1 (n) da f2 (n) funqciebis magaliTebi, romelTaTvisac Ω(f1 (n)) ⊂ Ω(f2 (n)) da,
zRvari
sxva sityvebiT rom vTqvaT, algoriTmi adgens, moiZebneba Tu ara a1 , ..., an mimdevrobaSi erTi mainc ricxvi
ai = b.
1. Tu mimdevroba a1 , a2 , ..., an Semosuli araa (carielia), dabeWde YaraA da algoriTmi daasrule; (es
ar sruldeba)
3. Tu mimdevroba a1 , a2 , ..., an Semosuli araa, dabeWde YaraA da algoriTmi daasrule; (es ar sruldeba)
5. Tu mimdevroba a1 , a2 , ..., an Semosuli araa, dabeWde YaraA da algoriTmi daasrule; (es ar sruldeba)
7. Tu mimdevroba a1 , a2 , ..., an Semosuli araa, dabeWde YaraA da algoriTmi daasrule; (es ar sruldeba)
9. Tu mimdevroba a1 , a2 , ..., an Semosuli araa, dabeWde YaraA da algoriTmi daasrule; (es sruldeba)
Semdegnairi iqneboda:
1. Tu mimdevroba a1 , a2 , ..., an Semosuli araa, dabeWde YaraA da algoriTmi daasrule; (es ar sruldeba)
am magaliTidan Cans, rom algoriTmebis bijebis raodenoba damokidebulia mis monacemTa raodenobasa
• uaresi SemTxvevis analizs (worst-case), anu maqsimum ramdeni biji dagvWirdeba am amocanis gada-
• saukeTeso SemTxvevis analizs (best-case), anu minimum ramdeni biji dagvWirdeba am amocanis gada-
• saSualo SemTxvevis analizs (average-case), anu saSualod ramdeni biji dagvWirdeba am amocanis
gadasaWrelad?
advili dasanaxia, rom Cvens zeda amocanaSi algoriTmi n+1 monacemis damuSavebas (n elementian masivSi
raRaca b ricxvis povnas) maqsimum 2n + 1 bijsa da minimum 2 bijs moandomebs.
sxva sityvebiT rom vTqvaT, uaresi SemTxvevis analizis Sedegad miRebuli funqcia f (n) gveubneba, rom
n
Y cali monacemisaTvis mocemuli algoriTmis bijebis raodenoba arasodes ar gadaaWarbebs f (n) fun-
qciasA, xolo sauketeso SemTxvevis analizis Sedegad miRebuli funqcia ki gveubneba, rom Ymocemuli
rac Seexeba gamoTvlis saSualo drois dadgenas, es procesi maTematikur statistikas emyareba da am
cxadia, rom n monacemis damuSavebis maqsimaluri da minimaluri dro monacemTa raodenobis cvlilebas-
Tan erTad icvleba, anu es aris funqcia, romelic damokidebulia n ∈ N cvladze. Cvens zeda magaliTSi
bijebis maqsimaluri raodenobaa f1 (n) = 2n + 1, xolo minimaluri ki f2 (n) = 2.
ganvixiloT algoriTmi, romelic n cali monacemis damuSavebas maqsimum f (n) bijs andomebs, xolo 1
qvemoT moyvanili cxrili, sadac warmodgenilia f (n) funqciis ramodeime magaliTi. masSi naCvenebia,
maqsimum ramden xans moandomebs es algoriTmi n monacemis damuSavebas. am cxrilSi 1µs = 10−6 wm,
−3
1ms = 10 wm ( 1µs ikiTxeba: 1 mikro wami, 1ms ikiTxeba: 1 mili wami).
am cxrilidan Cans, rom Tu algoriTmis bijebis raodenobaa f (n) = n · log n an ufro nela zrdadi funq-
cia, maSin misi gamoTvlebi sakmaod swrafi iqneba. Tu f (n) = n2 , gamoTvlebi swrafi iqneba daaxloebiT
50.000.000 elementamde. magram Tu f (n) = 2n , aseTi algoriTmi praqtikaSi ver gamoiyeneba 53-ze meti mona-
cemisaTvis. Tu algoriTmis zeda zRvaria f (n) = n!, maSin igi praqtikulad saerTod ver gamoiyeneba.
dalagebul simravleebze bevri amocanis swrafad gadaWra SeiZleba, maT Soris Zebnisac: milioni-
ani qalaqis telefonis wignSi mocemuli saxelisa da gvaris pirovnebis nomris povna, rogorc wesi,
sul ramodenime wams grZeldeba, daulagebel simravleSi Zebnas ki yvela Tavs aaridebda. dalage-
25 - 30 wlis asakis ramden moqalaqes aqvs miRebuli ganaTleba Tbilisis saxelmwifo universitetSi?
8.3 dalagebis algoriTmebi da maTi droiTi sirTulis analizi 77
amisaTvis saqarTvelos moqalaqeTa baza unda davaxarisxoT jer asakis mixedviT, Semdeg ki - ganaTlebis
miRebis institutis mixedviT. Sedegad miRebuli ori cxrilidan advilad SeiZleba statistikis dad-
gena.
Tu saWiroa did monacemTa bazaSi gameorebebis aRmofxvra, aqac Sedegs bazis dalagebiT efeqturad
miviRebT.
didi bazis gadamuSavebis erT-erTi pirveli magaliTia amerikis SeerTebuli Statebis mosaxleobis
1880 wlis aRwera. 1500 adamiani Svidi wlis ganmavlobaSi alagebda bazas saWiro monacemebis mixedviT.
im droisaTvis ucnobma inJinerma herman holeriTma (Herman Hollerith) daaxloebiT aTi weli moandoma
damaxarisxebeli manqanebis Seqmnas, romlis saSualebiTac 1890 wlis aRwera (meti mosaxleobiTa da
Tis firma, romelic 1924 wlidan International Business Machines (IBM) Corporation saxeliTaa cnobili,
rogorc viciT, erTsa da imave simravleze SesaZlebelia sxvadasxva dalagebis gansazRvra (aq da Semd-
savarjiSo 3.17: N naturalur ricxvTa simravleze moiyvaneT xuTi sxvadasxva dalagebis magaliTi.
savarjiSo 3.18: mocemulia ori simravle A dalagebiT ≤A da B dalagebiT ≤B . rogor SeiZleba gan-
savarjiSo 3.19: gansazRvreT iseTi sruli dalageba ≤ kompleqsur ricxvTa C=R×R simravleze, rom
p
a ≤ b ⇒ |a| ≤ |b| (Tu c = (c1 , c2 ) ∈ C, |c| = c21 + c22 ).
ganvixiloT Semdegi Zebnis amocana: mocemulia dalagebui mimdevroba A = (a1 , a2 , ..., an ), a1 ≤ a2 ≤ ... ≤ an
da elementi c. daadgineT, WeSmaritia Tu ara c ∈ A. sxva sityvebiT rom vTqvaT, unda davadginoT, aris
cxadia, rom Cven SegviZlia A mimdevrobis yvela elementis c ricxvTan Sedareba da Tu ∃i, ai = c, pasuxi
savarjiSo 3.20: dawereT rekursiuli algoriTmi, romelic zemoT aRwerili meTodiT daadgens, Sedis
Tu ara c elementi A mimdevrobaSi. daamtkiceT, rom Tu |A| = n, yvelaze cud SemTxvevaSi O(n) biji iqneba
saWiro. ramdeni biji daWirdeba algoriTms yvelaze karg SemTxvevaSi?
am meTodSi Cven ar viTvaliswinebT im faqts, rom A simravle dalagebulia. ara da, dalagebul mimde-
vrobaSi, Tu aviRebT A simravlis nebismier elements ai da c > ai , maSin cxadia, rom Zebna mimdevrobis
ai elementidan marcxena nawilSi saWiro araa. am ideazea agebuli Semdegi algoriTmi: A mimdevrobis
Sua elements vuwodoT a (Tu Sua elementi ar arsebobs, viRebT siis marjvena naxevris minimalur ele-
ments). Tu a = c, maSin vadgenT, rom c ∈ A da algoriTms vasrulebT. Tu c < a, maSin Zebna A siis marcxena
naxevarSi unda gavagrZeloT, winaaRmdeg SemTxvevaSi - marjvenaSi. am proceduras vimeorebT manam, sanam
magaliTi:
c < a? 1 = 5? ara; 1 < 5? ki 1 = 2? ara; 1 < 2? ki 1 = −8? ara; 1 < −8? ara
A (−12, −8, 1, 2, 3, 4, [5], 8, 9, 11, 12, 13, 17) → (−12, −8, 1, [2], 3, 4) → (−12, [−8], |{z}
1 )
| {z } | {z }
1 = 1? ki
magaliTi:
c < a? 15 = 5? ara; 15 < 5? ara 15 = 12? ara; 15 < 12? ara 15 = 17? ara; 15 < 17? ki
A (−12, −8, 1, 2, 3, 4, [5], 8, 9, 11, 12, 13, 17) → (8, 9, 11, [12], 13, 17) → (|{z}
13 , [17])
| {z } | {z }
15 = 13? ara
luri ricxvi c;
Sedegi: pasuxi SekiTxvaze c ∈ A?
Find( A, c )
sanam A mimdevroba carieli araa, gaimeore Semdegi operaciebi:
{
a = A mimdevrobis Sua elementi;
if( a = c ) {return(YkiA)}
else if( a < c ) A = A simravlis marjvena naxevari;
else A = A simravlis marcxena naxevari
}
{return(YaraA)}
savarjiSo 3.22: daamtkiceT, rom zemoT moyvanili algoriTmis drois zeda zRvaria O(log n), sadac n=
|A| (Sedarebisa da simravlis marcxena an marjvena nawilis aRebis operaciebi TiTo bijad CaTvaleT).
igive principzea agebuli dalagebul simravleSi elementis Camatebis amocana: mocemul dalagebul
mimdevrobaSi A unda CavamatoT axali elementi c ise, rom miRebuli mimdevrobac dalagebuli iyos.
gansxvaveba isaa, rom Tu povnis amocanaSi veZebdiT elements ai = c, aq veZebT or erTmaneTis miyolebiT
myof elements ai , ai+1 iseTs, rom ai ≤ c ≤ ai+1 da c am or elements Soris unda CavsvaT (cxadia, Tu
c < a1 an c > an , axali elementi siis TavSi an Sesabamisad boloSi unda Caisvas). TvalsaCinoebisaTvis
magaliTi:
magaliTi:
rogorc vxedavT, imis mixedviT, Tu rogori monacemi gveqneba, bijebis raodenoba SeiZleba ar iyos
damokidebuli monacemTa sigrZeze (rogorc pirvel magaliTSi), an iyos daaxloebiT imdenive, ramdenic
monacemTa sigrZea (meore magaliTi). aqedan gamomdinare, am meTodiT Casmis bijebis raodenobis qveda da
zeda zRvari iqneba Ω(1) da O(n) (sxva sityvebiT rom vTqvaT, monacemebisgan damoukideblad, dagvWirdeba
minimum ori biji - Sedareba da Casma - an maqsimum n + 1 biji - yovel elemntTan Sedareba da bolos Casma).
Tu gaviTvaliswinebT im faqts, rom A mimdevroba dalagebulia, maSin SegviZlia igive meTodi gamoviyenoT,
rogorc elementis Zebnis amocanaSi: veZebT iseT elements ai , romlisTvisac sruldeba piroba ai−1 ≤
c ≤ ai an ai ≤ c ≤ ai+1 . Tu c ≤ a1 an c ≥ an , axali elementi emateba Sesabamisad TavSi an boloSi.
TvalsaCinoebisaTvis ganvixiloT Semdegi magaliTi:
InsertFast( a1 , a2 , ..., an , c )
if( c ≤ a1 )
{A = (c, a1 , a2 , ..., an ); return(A) } /* Tu SesaZlebelia, pirvel elementad CavsvaT */
if( c ≥ an )
{A = (a1 , a2 , ..., an , c); return(A) } /* Tu SesaZlebelia, bolo elementad CavsvaT */
min = 1;
max = n; /* davadginoT saZiebeli nawilis sazRvrebi */
do
{
i = d min+max
2 e; /* saZiebeli nawilis Sua elementis indeqsi */
if( ai−1 ≤ c ≤ ai )
{A = (a1 , ..., ai−1 , c, ai , ..., an ); return(A) }
if( ai ≤ c ≤ ai+1 ) /* Tu SesaZlebelia, axali elementi saWiro adgilze CavsvaT */
savarjiSo 3.25: daamtkiceT, rom zemoT moyvanili algoriTmis drois qveda zRvaria Ω(1). razea damokide-
aRsaniSnavia, rom es algoriTmi pirvelze (miyolebiT Zebna da mere Casma) gacilebiT ufro swrafi Sei-
Zleba iyos (magaliTad, 210 = 1024 elementian siaSi Camatebas miyolebiTi algoriTmi daaxloebiT 2000
80 Tavi VIII algoriTmebis siswrafis Sefaseba
bijs SeiZleba andomebdes, xolo InsertFast algoriTmi (monacemTa saTanado struqturis SerCevisas)
es imas ar unda niSnavdes, rom mimdevrobiTi algoriTmi yovelTvis ufro neli iqneba - garkveuli
monacemebisTvis igi SeiZleba ufro swrafic iyos, magram yvelaze cud SemTxvevaSi InsertFast algoriTmi
gacilebiT ufro swrafia.
savarjiSo 3.26: daamtkiceT, rom A = (1, 2, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16) da c=3 monacemisaTvis mimde-
imisaTvis, rom mimdevrobaSi elementi CavamatoT, saWiroa algoriTmi, romelic monacemTa struqtu-
razea damokidebuli. Tu gvaqvs elementebis veqtori, saWiro adgilze Casamateblad mis marjvniv myofi
cvladi A[1] A[2] A[3] A[4] A[5] A[6] cvladi A[1] A[2] A[3] A[4] A[5] A[6]
−→ −→
mniSvn. 1 2 4 5 6 mniSvn. 1 2 4 5 6
cvladi A[1] A[2] A[3] A[4] A[5] A[6] cvladi A[1] A[2] A[3] A[4] A[5] A[6]
−→ −→
mniSvn. 1 2 4 5 6 mniSvn. 1 2 4 5 6
cvladi A[1] A[2] A[3] A[4] A[5] A[6] cvladi A[1] A[2] A[3] A[4] A[5] A[6]
−→
mniSvn. 1 2 4 5 6 mniSvn. 1 2 4 5 6
yvelaze cud SemTxvevaSi, Tu mocemuli gvaqvs n elementiani veqtori da gvWirdeba pirvel poziciaze
Camateba, mogviwevs n gadanacvlebis operaciis Catareba. aqedan gamomdinare, veqtorSi Camatebis opera-
cia yvelaze karg SemTxvevaSi Ω(1), yvelaze cud SemTxvevaSi ki O(n) operaciis Catarebas moiTxovs (misi
muSaobis dro wrfivia).
savarjiSo 3.27: zemoT aRwerili meTodis daxmarebiT dawereT algoriTmi Insert( A, k, c ), romelic A =
(a1 , a2 , ..., an ) mimdevrobis k poziciaze c elements Caamatebs da pasuxad (a1 , ..., ak−1 , c, ak , ..., an ) mimdevrobas
mogvcems.
savarjiSo 3.28: dawereT algoriTmi InsertList( A, k, c ), romelic A bmuli siis k poziciaze c elements
Caamatebs.
A (5, 1, 13, −8, 17) → (5, 1, 13, 17) → (5, 13, 17) → (13, 17) → (17) → ()
B () (−8) (−8, 1) (−8, 1, 5) (−8, 1, 5, 13) (−8, 1, 5, 13, 17)
savarjiSo 3.30: daamtkiceT, rom am algoriTmis dasrulebis Semdeg B mimdevrobaSi dalagebuli A sim-
ravle Caiwereba.
zogadad, algoriTmis bijebis raodenoba damokidebulia misi monacemebis sigrZeze. Cvens magaliTSi ki
n · k.
8.3 dalagebis algoriTmebi da maTi droiTi sirTulis analizi 81
axla ki gamoviTvaloT, Tu ramden bijs moandomebs SelectSort algoriTmi monacemad miRebuli mimdevro-
bis dalagebas. amisaTvis unda gvqondes simravleSi minimaluri elementis povnis algoriTmi, romelic
2 operacia. yvelaze karg SemTxvevaSi ki mxolod erTi Semowmeba da arc erTi miniWeba.
saukeTeso SemTxvevaSi: n + 1;
uares SemTxvevaSi: 2n + 1.
aRsaniSnavia, rom bijebis gamoTvlis dros Cven ar gaviTvaliswineT ciklis mTvlelis Sedarebisa da
gazrdis operaciebi, ciklidan gamosvlis operacia da sxva teqnikuri detalebi, romlebic Cveulebriv
bijebis gamoTvlisas ar iTvleba xolme. sworeT aseTi detalebis ugulebelyofis mizniTaa SemoRe-
am algoriTmis qveda da zeda zRvari SeiZleba gamoisaxos rogorc Ω(n + 1) = Ω(n) da O(2n + 1) = O(n).
aqedan gamomdinare, SeiZleba Sefasdes zusti zRvari Θ(n).
yovelive Tqmulidan viRebT: T (Min) ∈ Θ(n).
Tu algoriTmis gamoTvlis drois zeda zRvaria O(n), maSin ityvian, rom misi drois zrdis rigi aris
wrfivi.
operaciebi).
aqedan gamomdinare, A siidan x poziciaze mdgomi elementis amoSlis Erase(A, x) algoriTmis moqmedebis
dro iqneba T (Erase(A, x)) ∈ Θ(5) = Θ(1).
advili dasanaxia, rom SelectSort algoriTmis muSaobis dros jer uda Semowmdes, carielia Tu ara A
simravle (erTi biji), Semdeg (Tu A carieli araa) masSi moiZebnos minimaluri elementi ( c1 · n biji),
n(n + 1)
T (SelectSort(A)) = T (SelectSort(∅))+c1 (n+(n−1)+(n−2)+· · ·+1)+(c2 +1)n = 1+c1 +(c2 +1)n ∈ O(n2 ).
2
am SemTxvevaSi ityvian, rom SelectSort algoriTmis drois zrdis zeda zRvaria (muSaobis droa) O(n2 ), an
savarjiSo 3.32: gamoiTvaleT, ra iqneba programis drois zeda zRvari, Tu bmuli siis nacvlad aviRebT
veqtors da elementis amoSlis Semdeg carieli adgilis YamovsebaA (marcxena an marjvena elementebis
savarjiSo 3.33: dawereT programa, romelic amorCeviT dalagebis algoriTmis mixedviT A mimdevrobas
daalagebs ise, rom ar gamoiyenebs meore mimdevrobas: yovel jerze arCeuli minimaluri elementi iseve
savarjiSo 3.34: ra gansxvaveba iqneba gamoTvlis droSi, Tu wina savarjiSoSi moyvanili amocanisaTvis
algoriTms jer bmuli siis, Semdeg ki veqtoris gamoyenebiT davwerT? Seicvleba Tu ara drois zrdis
dalageba CadgmiT:
es meTodi farTod gamoiyeneba praqtikaSi: magaliTad, kartis TamaSis dros rig-rigobiT aRebul karts
uliaA: pirvel meTodSi jer A mimdevrobis saWiro adgilidan elements varCevT da mere mas B mimdevro-
bis TavSi vsvamT. meore meTodSi ki jer A mimdevrobis Tavidan pirvel elements viRebT da mas vsvamT B
mimdevrobaSi saWiro adgilze.
radgan CasmiT dalagebis algoriTmSi A simravlidan viRebT erT elements da mas B simravleSi vsvamT
InsertionSort( A )
B=∅;
while( A simravle carieli araa )
{
a = A mimdevrobis pirveli elementi;
InsertFast( B, a ) /* gamoviyenoT InsertFast algoriTmi B simravleSi axali elementis Casamateblad */
da viRebT:
savarjiSo 3.35: daamtkiceT toloba O(log n + log(n − 1) + · · · + log 2 + log 1) = O(n log n).
savarjiSo 3.36: zemoT moyvanili algoriTmis romeli nawilebi gansazRvraven muSaobis drois funqciis
zeda zRvars (sxva sityvebiT rom vTqvaT, romeli bijebis ugulebelyofa SeiZleba O aRniSnvaSi)?
savarjiSo 3.37: monacemTa ra struqtura unda avirCioT, rom algoriTmis bijebis zeda zRvari iyos
swrafi dalageba
Tu mocemulia dasalagebeli mimdevroba A = (an , ..., an/2+1 an/2 , , ..., a1 ), dalagebis proceduris daCqareba
SeiZleba monacemTa or tol nawilad dayofiT, maTi cal-calke dalagebiT da dalagebuli qvemimde-
vrobebis erTmaneTSi ise SerwymiT, rom miRebuli mimdevroba dalagebuli iyos. yovelive es erT maga-
liTze ganvixiloT:
mocemulia dasalagebeli mimdevroba A = (3, 7, 1, 15, 12, 2, 13, 6). misi monacemebi davyoT or tol nawilad:
A = (A2 , A1 ), sadac A2 = (3, 7, 1, 15) da A1 = (12, 2, 13, 6). TiToeuli qvemimdevrobis dalagebis Sedegad
viRebT: Sort(A2 ) = (1, 3, 7, 15) da Sort(A1 ) = (2, 6, 12, 13). cxadia, rom A mimdevrobis minimaluri elementi
menti iqneba. am process vagrZelebT manam, sanam erT-erTi mimdevroba ar dacarieldeba, ris Semdegac
A1 ([1], 3, 14, 15) (3, 14, 15) ([3], 14, 15) (14, 15) (14, 15) (14, 15) (14, 15)
A2 (2, 6, 12, 13) ([2], 6, 12, 13) (6, 12, 13) ([6], 12, 13) ([12], 13) ([13]) ( )
B ( ) (1) (1, 2) (1, 2, 3) (1, 2, 3, 6) (1, 2, 3, 6, 12) (1, 2, 3, 6, 12, 13)
sawyisi monacemi: or (TiTqmis) tol nawilad dayofili mimdevroba A = (A2 , A1 ) = (an , ..., a n2 +1 , a n2 , ..., a1 ),
n
ai ≤ aj , ai+ n
2
≤a j+ n
2
, 1≤i<j≤ 2.
M ergeSort(A)
if( A mimdevroba erT elementiania ) return(A) /* pirdapir erTi elementi daabrune */
B1 = M ergeSort(A1 );
/* daalage mimdevrobis orive nawili */
B2 = M ergeSort(A2 );
M erge(B1 , B2 ); /* Seurie dalagebuli naxevrebi ise, rom miRebuli mimdevroba
dalagebuli iyos */
zemoT moyvanil fsevdo kodSi gamoyenebulia qveprograma M erge, romelic Semdegnairad SeiZleba Cai-
weros:
M erge(A, B)
C = ( );
do
{
if( A mimdevroba carielia ) return( (C, B) );
if( B mimdevroba carielia ) return( (C, A) );
if( A mimdevrobis minimaluri elementi < B mimdevrobis minimaluri elementi )
{
C = ( C, A mimdevrobis minimaluri elementi);
A mimdevrobidan amoagde minimaluri elementi;
}
else
{
C = ( C, B mimdevrobis minimaluri elementi);
B mimdevrobidan amoagde minimaluri elementi;
}
}
savarjiSo 3.39: daamtkiceT, rom Tu |A| + |B| = n, maSin T (M erge(A, B)) ∈ O(n) da iyenebs ara umetes n−1
elementebis Sedarebas.
Teorema 3.1: M ergeSort algoriTmi iyenebs maqsimum dn log ne Sedarebis operacias da misi bijebis maqsi-
damtkiceba: Tu M ergeSort algoriTmi n sigrZis mimdevrobas alagebs, mis mier gamoyenebul Sedarebis
operaciaTa maqsimaluri raodenoba aRvniSnoT rogorc C(n). ra Tqma unda, C(1) = 0 da algoriTmis
C(n) = 2C(dn/2e)+(n−1) = 2dlog ne +(n+n/2+n/4+· · · 1)−log n = n+n(1/2+1/4+· · ·+1/2log n )−log n ≤ dn log ne.
savarjiSo 3.41: daamtkiceT, rom M ergeSort algoriTmis drois zrdis rigi iqneba O(n log n) (jer daamt-
kiceT, rom am algoriTmis muSaobis dro didad ar aRemateba Sedarebis operaciaTa ricxvs da aqedan
gamoitaneT daskvna).
savarjiSo 3.42: dawereT programa, romelic M ergeSort algoriTmis bmul siebze realizacia iqneba.
axla ki ganvixiloT meTodi, romelSic dalagebis YrTuli nawiliA rekursiul gamoZaxebamde xdeba:
mocemulia dasalagebeli mimdevroba A = (an , ..., a1 ). Tavidan virCevT mimdevrobis erT-erT (magaliTad,
pirvel) elements a = a1 da gamovyofT sam nawils: C1 = {ai |ai < a}, C2 = {ai |ai = a}, C3 = {ai |ai >
a}. sityvebiT rom vTqvaT, pirveli simravle Sedgeba A mimdevrobis yvela im elementisagan, romelic
8.3 dalagebis algoriTmebi da maTi droiTi sirTulis analizi 85
arCeul elementze naklebia, meore - iseTebisgan, romelic arCeuli elementis tolia da mesame - iseTe-
bisagan, romlebic arCeul elementze metia. cxadia, rom Tu Semdgom etapze pirvel da mesame simravles
dalagebis am meTods QuickSort ewodeba, romelic farTod gamoiyeneba praqtikaSi, imis da miuzedavad,
rom misi maqsimaluri bijebis zrdis rigi kvadratuli SeiZleba iyos garkveuli monacemebisaTvis:
Quicksort(A)
if( |A| = 1) return(A);
nebismieri meTodiT airCie erTi elementi a ∈ A;
aage simravleebi C1 = {ai |ai < a}, C2 = {ai |ai = a}, C3 = {ai |ai > a};
return((QuickSort(C1 ), C2 , QuickSort(C3 ));
aRsaniSnavia, rom sawyisi a elementis arCeva SeiZleba nebismieri meTodiT: an SemTxveviT, an fiqsire-
buli (magaliTad, pirveli, an bolo, an sxva) elementis, rac mudmiv droSi SeiZleba. amas garda, C1 , C2
da C3 simravleebis ageba wrfiv droSi SeiZleba, iseve, rogorc saboloo pasuxis gamotana im pirobiT,
Tu es qvesimravleebi dalagebulia.
samagierod umetes SemTxvevaSi es algoriTmi O(n log n) droSi alagebs monacemebs, zustad ki misi bije-
bis raodenoba umetes SemTxvevaSi gveqneba T (Quicksort(A)) < 2n lg n, sadac |A| = n.
magaliTisaTvis ganvixiloT A = (5, 3, 1, 5, 12, 8, 4, 7) (nax. 8.3). pirvel rigSi viRebT pirvel elements a = 5
da vagebT C1 = {3, 1, 4}; C2 = {5, 5}, C3 = {12, 8, 7} simravleebs. C2 simravlis elementebi pirdapir unda
gavides pasuxSi, xolo C1 da C3 igive principiT unda daiyos (naxazis meore striqoni).
erT elementiani qvesimravleebi pirdapir unda gamovitanoT pasuxSi, xolo sul cota or elementiani
(rogoricaa {8, 7}) igive principiT unda daiSalos. aRsaniSnavia is faqti, rom carieli simravleebis
( 5, 3, 1, 5, 12, 8, 4, 7 )
( 3, 1, 4 ) ( 5, 5 ) ( 12, 8, 7 )
(7) (8) ( )
( 1, 3, 4, 5, 5, 7, 8, 12 )
savarjiSo 3.44: daamtkiceT, rom arsebobs iseTi sawyisi mimdevroba A, romlis dalagebasac QuickSort
algoriTmi kvadratul dros moandomebs.
86 Tavi VIII algoriTmebis siswrafis Sefaseba
savarjiSo 3.45: dawereT algoriTmi, romelic mimdevrobiT mosuli (a1 , a2 , ..., an ) elementebis siidan k-
ur elements amoarCevs (minimaluri elementi pirvelia, meore iqneba is elementi, romelic minimalurze
naklebi an tolia da a.S.). am algoriTmis mexsierebis xarjvis zeda zRvari unda iyos O(k) (mexsierebis
xarjvis funqciis zeda zRvari bijebis raodenobis zeda zRvris analogiurad gamoiTvleba).
aqamde algoriTmebis analizis dros Cven maT zeda da qveda zRvars viTvlidiT. Tu raime algoriTmi
garkveul amocanas Wris (mag. monacemTa mimdevrobis dalagebas) misi zeda zRvari gveubneba imas, Tu
ramdenad swrafad SeiZleba am amocanis gadaWra. imis dadgena, Tu ramden dros moandomebs yvelaze
swrafi algoriTmi mocemuli amocanis gadaWras, sakmaod Znelia da mas amocanis qveda zRvris dadgena
ewodeba (ar agerioT algoriTmis qveda zRvarSi, romelic gviCvenebs, sul cota ramdeni biji Wirdeba
am konkretul algoriTms yvelaze karg SemTxvevaSi). mocemuli amocanis qveda zRvari gveubneba, rom
veravin dawers iseT algoriTms, romlis muSaobis maqsimaluri dro am qveda zRvarze swrafi iqneba.
araa gasakviri, rom imis dadgena, rom raRacis gakeTebas veravin SeZlebs, sakmaod rTuli procesia
da ar arsebobs erTi meTodi, romliTac amas yvela amocanisaTvis gavakeTebdiT: amocanaTa sxvadasxva
aq Cven davamtkicebT, rom Sedarebis operaciebze dafuZnebuli Zebnis amocanis qveda zRvaria Ω(n log n).
sxva sityvebiT rom vTqvaT, veravin dawers iseT algoriTms, romelic Sedarebis operaciebze iqneba
dafuZnebuli (rogorebsac Cven aqamde ganvixilavdiT) da romlis bijebis zeda zRvris (maqsimaluri
ganmarteba 3.1: mocemuli A = (a1 , a2 , ..., an ) mimdevrobis permutacia misi elementebis gadanacvlebas
permutaciaTa aRweris sxvadasxva meTodi arsebobs, magram xSirad maT ricxvTa mimdevrobiT gamosa-
xaven xolme, romelic gviCvenebs, Tu romel poziciaze unda gadavides sawyisi mimdevrobis esa Tu is
misi pirveli elementi gadava meore adgilze, meore - mesameze, mesame - mexuTeze, meoTxe iseve meoTxeze
savarjiSo 3.46: maTematikuri induqciis gamoyenebiT daamtkiceT, rom n elementiani mimdevrobis n! sxva-
dasxva permutacia arsebobs.
savarjiSo 3.47: romeli permutaciebiT miiReba sawyisi (a, b, c, d, e, f, g, h) mimdevrobidan (a) (a, d, h, b, c, f, e, g),
(b) (d, a, h, b, g, f, e, e) mimdevrobebi?
savarjiSo 3.48: ra mimdevrobebSi gadaiyvans sawyisi (a, b, c, d, e, f, g, h) mimdevrobidan (a) (1, 2, 4, 3, 6, 5, 7, 8),
(b) (8, 7, 6, 5, 4, 3, 2, 1) permutacia?
aRsaniSnavia, rom dalagebac sawyisi mimdevrobis permutaciaa. faqtiurad, dalagebis algoriTmis amo-
canaa, rac SeiZleba swrafad gaaanalizos Semosuli monacemi da Sesabamisi permutaciiT dalagebul
mimdevrobaSi gadaiyvanos.
lod misi elementebis Sedarebaa. magaliTad, Tu sam elementian mimdevrobaSi davaskvniT, rom a2 < a1
da a1 < a3 , maSin dalagebis permutacia iqneba (2, 1, 3) da dalagebuli simravle gamova (a2 , a1 , a3 ). am
8.3 dalagebis algoriTmebi da maTi droiTi sirTulis analizi 87
SemTxvevaSi ityvian, rom dalagebis es algoriTmi Sedarebis operaciebzea agebuli. aqamde ganxiluli
zemoT Tqmulidan gamomdinareobs, rom Cven SegviZlia permutaciebis gamoTvlis xis ageba. imave sam
elementiani mimdevrobis magaliTze SegviZlia avagoT gamoTvlis xe, romelic moyvanilia naxazSi 8.4.
a1 < a 2
ki ara
a2 < a 3 a2 < a 3
ki ara ki ara
a1 < a 3 a1 < a 3
ki ara ki ara
a1 < a2 < a 3 a1 < a3 < a 2 a3 < a1 < a 2 a2 < a1 < a 3 a2 < a3 < a 1 a3 < a2 < a 1
aseT struqturas Ygadawyvetilebis orobiTi xeA ewodeba. YorobiTiA imitom, rom yovel kvanZs (fo-
Tlebis garda) zustad ori Svili yavs, xolo YgadawyvetilebisA imitom, rom gamoTvlis dros raRaca
SekiTxvas pasuxi unda gavceT (gadawyvetileba miviRoT) da Semdeg Sesabamis gzas gavyveT. radgan am
konkretul magaliTSi dasmul Sekitxvaze ( ai < aj ?) ori sxvadasxva pasuxia SesaZlebeli, es sqema
am principiT nebismieri A = (a1 , ..., an ) mimdevrobis orobiTi gadawyvetilebis xis ageba SeiZleba, romel-
sac foTlebSi A mimdevrobis yvela permutacia eqneba. cxadia, rom nebismier algoriTms, romelic
Sedarebebzea agebuli, dalagebis dros aseTi xis zemodan qvemoT gasvla mouwevs da pasuxi (dalageba)
gansxvavebulia (Tu ori an ramodenime elementi erTmaneTis tolia, am SemTxvevisaTvisac SeiZleba ana-
mniSvnelovania Semdegi
lema 3.3: Tu µ da σ erTi da igive mimdevrobis sxvadasxva permutaciaa, maSin Sesabamis orobiT gadawyve-
es TiTqos da elementaruli leba gadamwyvetia dalagebis algoriTmis qveda zRvris gamoTvlaSi, radgan
aqedan gamomdinareobs, rom yoveli gadawyvetilebis orobiTi xe, romelic n monacems zrdadobis mixed-
viT alagebs, aucileblad unda Seicavdes n! foTols.
savarjiSo 3.50: maTematikur induqciaze dayrdnobiT daamtkiceT, rom T siRrmis orobiT xes maqsimum
e.w. stirlingis formulis Tanaxmad, romelic farTod gamoiyeneba kombinatorikaSi da Cven aq daumt-
n n
T ≥ log n! ≥ log = n log n − n log e,
| {z e }
stirlingis formula
sadac e e.w. naturaluri logariTmis fuZe (an, rogorc mas sxvanairadac uwodeben eileris ricxvia) -
1 n
P∞ 1
mudmiva e = limn→∞ 1 + n = n=0 n! = 2, 718281828459045235...
n n √
log n! ∼ log · 2πn,
e
rac marcxena da marjvena nawilSi mocemuli funqciebis YmsgavsebasA niSnavs:
log n!
lim n n
√ = 1.
n→∞ log e · 2πn
es formula imiTicaa saintereso, rom masSi mecnierebis ori umniSvnelovanesi mudmiva - π da e erTad
figurirebs.
aqedan gamomdinare, zemoT moyvanili gadawyvetilebis orobiTi xe, romelic saWiro permutaciamde
Teorema 3.2: Sedarebis operaciebze agebuli daxarisxebis algoriTmis qveda zRvaria Ω(n log n). ufro
savarjiSo 3.51: aCveneT, rom Sedarebis operaciebze agebuli nebismieri algoriTmi, romelic daulage-
beli n elementiani siis minimalur elements ipovnis, sul cota n−1 Sedarebas moiTxovs.
savarjiSo 3.52: aCveneT, rom Sedarebis operaciebze agebuli nebismieri algoriTmi, romelic daulage-
beli n elementiani siidan minimalur da mis Semdgom (anu or umcires) elements ipovnis, sul cota
yvela drois erT-erTma udidesma maTematikosma leonard eilerma, romelic erTi xani qalaq kionigs-
eileris amocana xidebis Sesaxeb: qalaqSi moedineba mdinare, romelic mas or nawilad hyofs. amas
garda, TviTon mdinareSi ori kunZulia (nax. 9.1). xmeleTis nawilebi, romlebic naxazze laTinuri
asoebiTaa aRniSnuli, erTmaneTTan SeerTebulia xidebiT. SeiZleba Tu ara qalaqs SemovuaroT ise, rom
aRsaniSnavia, rom mocemuli suraTis saCveneblad xatva sulac araa saWiro: sakmarisia xmeleTis nawi-
lebi aRvniSnoT wertilebiT, xolo maTi SemaerTebeli xidebi ki xazebiT (nax. 9.2).
aseT struqturas - wertilebs da maT SemaerTebel xazebs - grafi ewodeba. zemoT moyvanili orive
naxazi (a) da (b) erTsa da imave grafs aRwers, imis da miuxedavad, rom erTi SexedviT naxazebi sxvada-
sxvaa: grafSi mTavaria imis Sesaxeb informaciis miReba, Tu romeli wertili romel sxva wertilebTanaa
SeerTebuli.
mocemulia wveroTa simravle V = {A, B, C, D} da wiboebi E = {(A, B), (B, A), (A, D), (B, C), (C, B), (B, D), (C, D)}.
aqedan gamomdinare, grafis naxazis daxazva sulac araa aucilebeli: igi wveroTa da wiboTa simravleebiTac
SeiZleba srulfasovnad aRiweros. mTavaria imis codna, Tu ra wveroebia mocemuli da romeli wveroe-
ase rom, grafi G SeiZleba ganvsazRvroT, rogorc ori simravlisagan Semdgari struqtura: G = (V, E).
89
90 Tavi IX grafTa Teoriis elementebi
advili dasanaxi araa, rom (a) da (b) naxazebSi erTi da igive grafia naCvenebi. magram Tu wveroebs sax-
savarjiSo 1.1: aRwereT ?? (a) da ?? (b) naxazebSi moyvanili grafebis wveroebisa da wiboebis simravleebi
da daamtkiceT maTi toloba.
zemoT moyvanil grafebSi arsebobs e.w. izolirebuli wvero - anu iseTi, romelic sxva wveroebTan araa
dakavSirebuli. SeiZleba arsebobdes iseTi grafebic, romlebic ori nawilisgan (grafisgan) Sedgeba.
aseT grafebs ara bmuli ewodebaT. Cven ZiriTadad bmul grafebs ganvixilavT, anu iseTebs, sadac
rogorc vnaxeT, erTi da igive grafi SeiZleba sxvadasxvanairad davxazoT. zogadad, grafis daxazvas
mniSvneloba ar aqvs. mTavaria gvqondes informacia imis Sesaxeb, Tu romeli wvero romelTanaa SeerTe-
buli.
nax. 9.4-Si naCvenebia, Tu rogor SeiZleba daixazos grafi ise, rom erT wiboze orjer ar gadaviaroT.
9.1 grafebis gansazRvreba da ZiriTadi Tvisebebi 91
ABECDACBD.
grafis daxazvis procesi SeiZleba SevadaroT grafze YsiarulsA: erTi wverodan meoreSi wibos gavleba
Tu aseTi wesiT erTi wverodan meoreSi gadavalT (ise, rom erTsa da imave wiboze orjer ar gadavivliT),
ganvlili wiboebis erTobliobas YgzasA vuwodebT. ase, magaliTad, 9.4 (d) -Si ganvlili gza iqneba
ABECD. im wiboebs, romlebzedac gzis gavlisas gadavivliT, am gziT dafaruli wiboebi ewodeba.
amrigad, eileris amocanac SeiZleba ase davsvaT: mocemul grafSi arsebobs Tu ara iseTi gza, romelic
yvela wibos (mxolod erTxel) dafaravs? Tu aseTi gza arsebobs, mas eileris cikls uwodeben.
zemoT moyvanili amocana SeiZleba CamovayaliboT aseTnairadac: arsebobs Tu ara mocemul grafSi
eileris cikli?
Tu ganvixilavT or grafs, romelic naCvenebia 9.5 naxazSi, advilad davrwmundebiT, rom ABECDACBDF A
gza swored nax. 9.5(b) grafs zemoT aRwerili pirobebiT gadafaravs, magram nax. 9.5(a) grafisaTvis aseTi
bevri cdis Semdeg gaCndeba eWvi, rom aseTi gza saerTod ar arsebobs (anu am grafis erTi xelis mosmiT
imis dasadgenad, Tu romeli grafis Semovla SeiZleba ise, rom yvela wibo daifaros mxolod erTxel,
Tu mocemulia grafi G = {V, E}, misi nebismieri v ∈V wveros rigi deg(v) ewodeba masTan mierTebul
wiboTa raodenobas. cxadia, rom nebismieri grafis wveros rigi SeiZleba iyos an kenti, an luwi. Tu
wveros rigia luwi, mas YluwianA, winaaRmdeg SemTxvevaSi ki YkentianA wveros vuwodebT.
qvemoT moyvanilia grafi, romlis kentiani wveroebi TeTradaa naCvenebi, xolo luwiani ki - Savad.
nebismier grafSi eileris cikli iarsebebs maSin da mxolod maSin, Tu masSi kentiani wveroebis rao-
Tu grafSi kentiani wvero ar arsebobs, maSin masSi moiZebneba eileris Caketili cikli: romeli wvero-
SeniSvna: Tu grafSi kentiani wveroebis raodenobaa ori, maSin masSi iarsebebs eileris Ria cikli:
savarjiSo 1.2: nax. 9.7-Si naCvenebi grafebidan romels SeiZleba qondes eileris cikli?
savarjiSo 1.3: nax. 9.7-Si naCveneb grafebSi daiTvaleT yoveli wveros rigis jami (maTematikur enaze es
X
σ(G) = deg(v).
v∈V
es ricxvi SeadareT imave grafis wiboebis raodenobas. ra kanonzomiereba SeiZleba davadginoT wveroTa
rigebis jamsa da wiboebis raodenobas Soris? maTematikur enaze rom vTqvaT, ra damokidebulebaa σ(G)
da |E| ricxvebs Soris? (aq |E| aris E simravlis elementebis raodenoba, rac Cvens SemTxvevaSi grafis
savarjiSo 1.5: daamtkiceT, rom ar iarsebebs iseTi grafi, romelSic kentiani wveroebis raodenoba
iqneba kenti ricxvi (anu yvela grafSi kentiani wveroebis raodenoba luwia: ∀G = (V, E), ∃i ∈ N, σ(G) = 2·i).
savarjiSo 1.6: daxazeT grafi, romelic warmoiSveba nax. 9.8 naCvenebi grafidan (a) ABCD, (b) ABECA,
(g) BEC da (d) F DBCE gzebis amogdebis Sedegad.
rodesac viwyebT grafze Semovlas, cxavdia, rom erTi wverodan unda daviwyoT da meoreSi unda davam-
TavroT. yvela danarCen wveroSi ramdenjerac SevalT, zustad imdenjer unda gamovideT. aqedan gamom-
dinare, masTan mierTebul wiboTa raodenoba unda iyos luwi. ese igi, Tu kentian wveroTa raodenoba
orze metia, erTidan daviwyebT, meoreSi davamTavrebT, magram dagvrCeba iseTi wveroc, romelSic grafis
Semovlisas SevalT da veRar gamovalT ise, rom ukve gavlil wveros meored ar gadavuaroT.
axla ki induqciaze dayrdnobiT davamtkicoT, rom iseT grafebSi, sadac kentian wveroTa raodenoba
zustad oria, iarsebebs eileris gaxsnili cikli, xolo iseTSi, sadac kentiani wvero ar arsebobs,
induqciis daSveba: davuSvaT, rom eileris Teorema WeSmaritia yvela bmuli grafisaTvis, romlis wi-
davuSvaT, rom aseT grafs ori kentiani wvero A da D aqvs. radgan Cven bmul grafebs ganvixilavT, unda
arsebobdes gza A wverodan D wveroSi, romelic kidev raRaca wveroebze gaivlis (nax. 9.10 (a)). aseTi
grafis konkretuli magaliTi moyvanilia naxazSi 9.10 (b) (iq gamoyofili gza A wverodan D wveroSi sxva
feriTaa SeRebili).
Tu erT-erT aseT gzas amovirCevT da mis wiboebs grafidan amovSliT (unda mivaqcioT yuradReba imas,
rom amoSlis Sedegad grafi ar daiSalos calkeul nawilebad), miviRebT sxva grafs, romelsac mxo-
lod luwiani wiboebi aqvs.
savarjiSo 1.7: daamtkiceT, rom zemoT moyvanili grafidan SerCeuli gzis amogdebis Sedegad miRebul
radgan darCenil grafSi wiboebis raodenoba n ricxvze naklebi iqneba, misTvis WeSmariti iqneba ei-
leris Teorema da iarsebebs iseTi Caketili cikli, romelic A wveroSi daiwyeba da masSive das-
ruldeba. Semdeg ki amogdebuli gzis wiboebiT gadavalT A wverodan D wveroSi, riTac sawyis n
wiboian grafSi SevadgenT eileris Ria gzas.
analogiuri msjelobiT SegviZlia davamtkicoT, rom nebismier n wiboian grafSi, romelic ar Seicavs
kentian wveroebs, arsebobs eileris Caketili cikli, mxolod aq ukve or mezobel wveros viRebT da
maT SemaerTebel wibos amovagdebT (im pirobiT, rom am wibos amogdebis Semdeg grafi or nawilad ar
savarjiSo 1.8: daamtkiceT, rom Tu mocemulia n wiboiani grafi, romelic ar Seicavs kentian wveroebs,
savarjiSo 1.9: dawereT algoriTmi, romelic nebismieri mocemuli grafisaTvis gansazRvravs, arsebobs
algoriTmebis Teoriasa da praqtikaSi Zalian mniSvnelovania e.w. hamiltonis ciklis amocana: mo-
cemuli grafisTvis gansazRvreT, SeiZleba Tu ara masSi movZebnoT iseTi gza, romelic yvela wveroze
gaivlis zustad erTxel da dabrundeba imave wveroSi, saidanac daiwyo Semovla? aq gasaTvaliswinebe-
savarjiSo 1.10: nax. 9.7-Si moyvanili grafebidan romlebs aqvT hamiltonis cikli?
Tu nebismier grafSi eileris ciklis arsebobis dadgena sakmaod advilad SeiZleba, hamiltonis ciklis
arsebobis dasadgenad dReisaTvis cnobili yvela algoriTmi Zalian nela muSaobs da didi grafebisa-
es SeiZleba imiT iyos gamowveuli, rom am amocanisaTvis jer-jerobiT veravin moifiqra swrafi algo-
riTmi, an imiT, rom aseTi algoriTmi ar arsebobs. magram radgan hamiltonis ciklis amocana uaRresad
mniSvnelovania, es centraluri Ria sakiTxia kompiuterul mecnierebaSi.
rogorc aqamde vnaxeT, grafebis warmodgena SeiZleba simravleebis saxiT. meorenairad grafis warmod-
gena e.w. bmulobis matriciT SeiZleba. magaliTisaTvis ganvixiloT nax. 9.8-Si moyvanili grafi.
9.1 grafebis gansazRvreba da ZiriTadi Tvisebebi 95
A B C D E F
A 0 1 1 1 0 1
B 1 0 1 1 1 0
C 1 1 0 1 1 0
D 1 1 1 0 0 1
E 0 1 1 0 0 0
F 1 0 0 1 0 0
zogadad, A = (ai,j )ni=1 raime G = (V, E) grafis bmulobis matricia, Tu V = {v1 , ..., vn } da
(vi , vj ) ∈ E ⇔ ai,j = 1.
0 1 1 1 0 1
1 0 1 1 1 0
1 1 0 1 1 0
A=
1 1 1 0 0 1
0 1 1 0 0 0
1 0 0 1 0 0
savarjiSo 1.12: arsebobs Tu ara iseTi grafi, romlis bmulobis matrici araa simetriuli (anu ∃i, j
iseTi, rom ai,j 6= aj,i )?
96 Tavi IX grafTa Teoriis elementebi
ganvixiloT Semdegi amocana: mocemulia ruka, romelzec naCvenebia qalaqebi da maTi SemaerTebeli
gzebi (anu mocemulia grafi, sadac wvero romeliRaca qalaqs aRniSnavs, xolo wibo - ori qalaqis
SemaerTebel gzas).
amas garda, yovel wibos gverdiT aweria raRac ricxvi, romelic mocemul or qalaqs Soris arsebuli
aRsaniSnavia, rom es grafi garkveul informacias iZleva da misi wveroebis ganlageba sibrtyeze, faqtiu-
rad, nebismieri SeiZleba iyos. ase, magaliTad, ADF samkuTxedSi Sesabamisi wiboebis wonebi ar akmay-
ofileben samkuTxedis utolobas, magram mocemul amocanaSi SesaZlebelia, rom, magaliTad, gza iyos
arapirdapiri.
0 80 13 23 0 60
80 0 40 100 23 0
13 40 0 28 18 0
M =
23 100 28 0 0 12
0 23 18 0 0 0
60 0 0 12 0 0
Tu grafSi wiboebi mimarTulia (ese igi, isriTaa naCvenebi, Tu romeli wverodan romlisakenaa mimar-
Tuli wibo), maSin misi SeerTebis matrici iqneba arasimetriuli (nax. 9.12).
am magaliTSi gvaqvs wibo A wverodan D wveroSi, magram ara piriqiT. zemoT moyvanili grafis matrici
iqneba
9.1 grafebis gansazRvreba da ZiriTadi Tvisebebi 97
0 0 0 1 0 0
1 0 1 0 0 0
1 0 0 0 1 0
0 1 1 0 0 1
0 1 1 0 0 0
1 0 0 0 0 0
grafs ewodeba sruli, Tu misi yvela wvero erTmaneTTanaa dakavSirebuli. n wveroiani sruli grafi
aRiniSneba rogorc Kn . maxazSi 9.13 naCvenebia or, sam, oTx, xuT, eqvs da Svid wveroiani sruli grafebi.
nax. 9.13: Ki , 2 ≤ i ≤ 7
cxadia, rom didi sruli grafi sakmaod Zneli dasaxatia. magaliTisaTvis mogvyvavs K23 (nax. 9.14).
Teoriasa da praqtikaSi Zalian mniSvnelovania e.w. orad gayofili sruli grafi, romlis wveroebi or
simravled SegviZlia gavyoT ise, rom TiToeul simravleSi Sesuli wveroebi erTmaneTTan SeerTebuli
ar iyos, samagierod erTi simravlis wvero meore simravlis yvela wverosTan iyos mierTebuli. orad
dayofil srul grafs, romlis erT simravleSi n, xolo meoreSi ki m wveroa, aRniSnaven rogorc Kn,m .
98 Tavi IX grafTa Teoriis elementebi
aRsaniSnavia, rom orad dayofili grafi SeiZleba sruli ar iyos, anu erTi simravlis wvero meore
orad dayofili grafebis Seswavla Zalian mniSvnelovani sakiTxia, radgan nebismier grafs Seesabameba
erT simravleSi gavaerTianebT mocemuli grafis wveroebs, xolo meoreSi ki davumatebT imden axal
wveros, ramdeni wibocaa mocemul grafSi (yovel wibos erTi axali wvero Seesabameba) da Semdeg pirveli
simravlidan zustad or wveros meore simravlis erT wverosTan SevaerTebT, Tu es ori wvero sawyis
aseve Zalian mniSvnelovania qvegrafis, anu grafis YnawilisA cneba. Tu erTi grafi meoredan wveroe-
bisa da maTi SemaerTebeli wiboebisagan an wiboebis nawilisagan Sedgeba, maSin am grafs meore grafis
savarjiSo 1.13: moiyvaneT nax. 9.17 (a)-Si moyvanili grafis xuTi qvegrafis magaliTi.
zogadad, imis garkveva, aris Tu ara erTi grafi meores qvegrafi, Zalian rTulia: dReisaTvis ar aris
cnobili iseTi algoriTmi, romelic nebismieri ori G da G0 grafisaTvis swrafad, anu polinomiur
0
droSi gaarkvevs, aris Tu ara G grafi G grafis qvegrafi.
rogorc vxedavT, erTSi ori wibo ikveTeba, meoreSi ki - ara. iseT grafs, romlis daxatva iseTnairad
Zalian mniSvnelovania Semdegi amocana: mocemuli grafisaTvis gaarkvieT, SeiZleba Tu ara misi brty-
aqedan gamomdinare, verc erTi grafi, romelic am oridan erT-erTs mainc Seicavs, brtylad ver daixa-
teba.
bunebrivia Semdegi SekiTxva: ra saWiroa grafis planarulobis dadgena? raSi gvexmareba is faqti, rom
grafi planarulia?
rogorc aRmoCnda, mravali amocana, romelic nebismier (araplanarul) grafze rTuli amosaxsnelia,
romelic swrafad (anu polinomiur droSi) xsnis amocanas, magram araplanarul grafze arasworad
muSaobs. ase rom, Tu davadgenT, rom grafi planarulia, masze aseTi swrafi algoriTmis gamoyeneba
SesaZlebeli iqneba.
amas garda, Zlain mniSvnelovani amocanaa grafis minimaluri gadakveTis wertilebiT sibrtyeze daxatva
magram, samwuxarod, arc am amocanisTvisaa polinomiuri (anu swrafi) swrafi algoriTmi cnobili.
100 Tavi IX grafTa Teoriis elementebi
Tavi 10
siebi da sxva
cnobil qarTul zRaparSi Yrwyili da WianWvelaA rwyili WianWvelis gadasarCenad RorTan midis da
TokisTvis jagars Txovs. Rori mosTxovs rkos da gaagzavnis muxasTan. muxa sTxovs, rom moaSoros yvavi
da gaagzavnis yvavTan. yvavi sTxovs wiwilas da gaagzavnis kruxTan. kruxi sTxovs fetvs da gaagzavnis
ormosTan. ormo sTxovs Tagvis moSorebas da gaagzavnis TagvTan. Tagvi sTxovs katis moSorebas da
gaagzavnis katasTan. kata sTxovs rZes da gaagzavnis ZroxasTan. Zroxa sTxovs balaxs da gaagzavnis
mindorSi, sadac rwyili mokrefs balaxs, miutans Zroxas, is miscems rZes da gaagzavnis ukan katasTan.
kata rZes rom miiRebs, moeSveba Tagvs da a.S.: rwyili ganvlil jaWvs ukan gahyveba, bolos miva RorTan,
miutans rkos, misgan miiRebs jagars, dawnis Toks da Tavis megobars wylidan amoiyvans.
am zRaparSi Cven erTi saintereso faqti SegviZlia davinaxoT, romelic farTod gamoiyeneba infor-
matikaSi:
Seqmnilia monacemTa jaWvi, romlis TavSic dgas Rori. Rorma icis, sad dgas muxa, anu monacemTa jaWvSi
Semdgomi elementis misamarTi. muxam icis yvavis (jaWvSi misi Semdgomi elementis) misamarTi da a.S.:
jaWvis yovel elementSi Cawerilia sami komponenti: informacia imis Sesaxeb, Tu ra aris es komponenti
(Cvens magaliTSi ra cxoveli an mcenarea), misi wina komponentis misamarTi da misi Semdgomi komponentis
misamarTi. grafikulad es naCvenebia nax. 10.1. monacemTa aseT jaWvs bmuli sia ewodeba. bmuli imitom,
rom am jaWvis yoveli komponenti mis wina da mis Semdgom komponentzea YgadabmuliA: mas Tavis wina da
aRsaniSnavia, rom radgan Rori am siaSi pirvelia, mas wina elementi ar hyavs da, Sesabamisad, misi misamar-
Tic ver eqneba. amitomac wina elementis misamarTis magivrad uweria 0. analogiuri situaciaa balaxTan:
radgan igi bolo elementia jaWvSi, misi Semdgomi elementis misamarTis adgilas weria 0.
101
102 Tavi X monacemTa Senaxvis meTodebi: bmuli siebi da sxva
aRsaniSnavia, rom es 0 araa ricxvis mniSvnelobis matarebeli. es mxolod imis maniSnebelia, rom am el-
ementis Semdgomi (an wina) elementi ar arsebobs (amitomac zoggan weren kidec , an il imis aRsaniSnavad,
bmul siis erT-erTi upiratesobaa is, rom masSi elementis mosaZebnad araa saWiro yvela elementis
misamarTis codna, sakmarisia mxolod misi sawyisi elementis misamarTi vicodeT: gadavalT im element-
Tan da Tu es araa is, rasac veZebT, gavigebT misi Semdgomi elementis misamarTs. Semdeg gadavalT am
Semdgom elementze (Tu aseTi arsebobs) da CavatarebT igive proceduras: vnaxavT, aris Tu ara es is
elementi, romelsac veZebT. Tu ar aris, vigebT misi Semdgomi elementis misamarTs (Tu arsebobs) da
igives vimeorebT. Tu Semdgomi elementi ar arsebobs, maSin saZebni elementi am siaSi ar yofila.
Cvens konkretul magaliTSi, Tu gvainteresebs, aris Tu ara kruxi am bmul siaSi, viwyebT pirveli el-
ementiT, romlis misamarTi unda vicodeT (am SemTxvevaSi amboben, rom saZiebeli elementia YkruxiA).
vadarebT mniSvnelobebs: katas veZebT, magram gvxvdeba Rori. amitom vamowmebT, arsebobs Tu ara Semd-
gomi elementi (anu Sesabamis grafaSi Tu weria 0). radgan am grafaSi weria misamarTi (da ara 0), gadavdi-
aqtualuri Canaweris mniSvnelobaa Yyvavi". radgan Cven veZebT katas, unda gadavideT Semdeg elementze,
magram jer SevamowmoT, arsebobs Tu ara aseTi elementi. radgan Sesabamis grafaSi ar weria 0, amitom
aseTi elementi arsebobs da gadavdivarT mis misamarTze. axla aqtualuri Canaweris mniSvnelobaa
YkataA. vadarebT saZebn mniSvnelobas. radgan emTxveva, procedura unda dasruldes: saZebni Canaweri
napovnia.
Tu Cvens konkretul magaliTSi gvinda gavigoT, arsebobs Tu ara Canaweri YspiloA, isev viwyebT Tavidan
Tu aseTi arsebobs. rodesac mivadgebiT Canawers YbalaxiA da davaskvniT, rom igi ar emTxveva saZiebo
Canaweris mniSvnelobas, unda gadavideT Semdegze, magram jer SevamowmoT, aris Tu ara es aqtualuri
Canaweri bolo mocemul bmul siaSi. radgan Semdegi Canaweris misamarTis Sesabamis grafaSi weria 0,
SegviZlia davaskvnaT, rom es siaSi bolo elementia da procedura davasruloT: Canaweri YspiloA am
siaSi ar gvxvdeba.
wina naxazSi bmuli siis mezobeli elementebi erTi meores miyolebiT arian warmodgenilni. es araa au-
cilebeli: Sesazloa, rom isini areulad iyvnen ganlagebuli (nax. 10.2). mTavaria, rom yovelma elementma
nax. 10.2:
bmuli siis yoveli elementi sami komponentisagan Sedgeba: esaa TviTon am komponentis mniSvneloba (anu
gasaRebi), misi cina elementis misamarTi da Semdgomi elementis misamarTi. nax. 10.3-Si zemoT naCvenebia
es sam komponentiani elementi. Tu igi ganTavsebulia misamarTiT x, misi wina elementis misamarTi aRini-
Sneba funqciiT L(x) (grafikulad iwereba marcxena ujraSi), xolo misi momdevno elementis misamarTi
ki aRiniSneba funqciiT R(x) (grafikulad iwereba marjvena ujraSi). TviT misi mniSvneloba aRiniSneba
funqciiT Key(x) (grafikulad Sua ujraSi). amrigad, L(kruxis misamarTi ) =Yyvavis misamarTiA, R(katis
10.1 rwyili da WianWvela 103
nax. 10.3:
savarjiSo 1.1: risi tolia L(x), R(x) da Key(x), Tu x =YZroxis misamarTiA, x =YTagvis misamarTiA,
zogadad, Tu mocemulia bmuli siis romelime elementis misamarTi x, Key(x) am Canaweris mniSvnelobaa,
L(x) misi wina Canaweris misamarTi, xolo R(x) ki - misi momdevno Canaweris misamarTi.
aqedan gamomdinare, R(L(x)) aris x misamarTze myofi elementis wina Canaweris marjvena grafas mniSvne-
loba
savarjiSo 1.2: ras niSnavs Canawerebi R(R(x)), L(L(x)), L(R(x)), Key(L(x)) da Key(R(x)) ?
rodesac vwerT L(x), Key(x) an R(x), imis da mixedviT, Tu risi tolia x, es Canawerebic sxvadasxva iqneba.
am SemTxvevaSi ityvian, rom x aqtualur Canawerze miuTiTebs. rodesac x bmuli siis romelime Canaweris
misamarTia (anu am Canawerze miuTiTebs), mis Semdgom elementze YgadasvlaA (anu mis Semdgom elementze
miTiTeba) SeiZleba brZanebiT x = R(x). aq x cvlads mieniWeba aqtualuri Canaweris Semdegi elementis
cxadia, sanam gadavalT wina an momdevno elementze, unda SevamowmoT, arsebobs Tu ara es elementi (anu
savarjiSo 1.4: ra brZanebiT SeiZleba Semowmdes, aris Tu ara x misamarTze myofi Canaweri bmuli siis
axla warmovidginoT, rom gvinda zRapris gadakeTeba ise, rom am jaWvidan amovagdoT yvavi: muxa pir-
dapir agzavnis kruxTan (anu Canaweri YyvaviA am bmuli siidan unda amovardes). ese igi, Tavidan mocemuli
gvaqvs situacia, romelic naCvenebia nax. 10.3-Si SuaSi da gvinda miviRoT situacia, romelic naCvenebia
igive naxazSi qvemoT. Canaxeri YyvaviY bmuli siidan amovardeba im TvalsazrisiT, rom am siaSi moZrao-
bisas am elements veRar wavawydebiT. Canaweri YyvaviA sadRac ki iarsebebs, magram igi am siis elementi
aRar iqneba.
rogorc zeda naxazidan Cans, yvavis wina elementi (am SemTxvevaSi YmuxaA) unda miuTiTebdes YyvavisA Semd-
gom elementze, am SemTxvevaSi Canawerze YkruxiA da piriqiT: yvavis Semdgomi elementi (am SemTxvevaSi
YkruxiA) unda miuTiTebdes YyvavisA wina elementze, am SemTxvevaSi Canawerze YmuxaA. aqedan gamomdinare,
Tu gvinda raime elementis bmuli siidan amoSla, misi wina elementis marjvena grafaSi unda Caiweros
104 Tavi X monacemTa Senaxvis meTodebi: bmuli siebi da sxva
am elementis Semdgomi Canaweris misamarTi, xolo am elementis Semdgomi elementis marcxena grafaSi
• R(L(x)) = R(x) (aqtualuri elementis wina elementi unda miuTiTebdes aqtualuri elementis
momdevno elementze);
• L(R(x)) = L(x) (aqtualuri elementis momdevno elementi unda miuTiTebdes aqtualuri elementis
wina elementze);
• x = L(x) aqtualuri elementi siidan amogdebulia. amitom gadavdivarT mis wina elementze.
savarjiSo 1.5: davuSvaT, x aris bmuli siis pirveli elementis misamarTi. brZanebebiT CawereT, rogor
savarjiSo 1.6: davuSvaT, x aris bmuli siis bolo elementis misamarTi. brZanebebiT CawereT, rogor
axla ki warmovidginoT, rom Cveni mgaliTis bmul siaSi Canawer YmuxasaA da YyvavsA Soris unda CavsvaT
Canaweri YspiloA (nax. 10.4 marcxniv). sawyis jaWvSi Canaweri YmuxaA Semdgom elementad miuTiTebs Canaw-
erze YyvaviA, xolo Canaweri YyvaviA wina elementad miuTiTebs Canawerze YmuxaA. imisaTvis, rom CavsvaT
Canaweri YspiloA, unda SevqmnaT iseTi bmulebi, rogoric naCvenebia nax. 10.4 marjvniv.
nax. 10.4:
moc.: x aris im Canaweris misamarTi, romlis Semdegac unda Cajdes axali Canaweri (aqtualuri
• R(S) = R(x) (axali elementis Semdgomi elementi unda iyos aqtualuri elementis momdevno ele-
menti);
• L(R(x)) = S (aqtualuri elementis momdevno elementis wina elementi unda iyos axali elementi);
savarjiSo 1.7: mocemulia bmuli sia da S misamarTze ganTavsebuli axali Canaweri. dawereT brZanebaTa
mimdevroba, romelTa saSualebiTac SeiZleba axali elementis siis pirvel elementad Camateba.
savarjiSo 1.8: mocemulia bmuli sia da S misamarTze ganTavsebuli axali Canaweri. dawereT brZanebaTa
mimdevroba, romelTa saSualebiTac SeiZleba axali elementis siis bolo elementad Camateba.
10.1 rwyili da WianWvela 105
imisaTvis, rom vipovnoT bmuli siis bolo Canaweri, unda YviaroT marjvnivA manam, sanam ar Segvxvdeba
savarjiSo 1.9: daamtkiceT, rom am ciklis damTavrebis Semdeg x cvladSi siis bolo elementis misamarTi
ewereba.
savarjiSo 1.10: dawereT brZanebaTa mimdevroba, romliTac bmuli siis pirveli elementis povna Sei-
Zleba.
savarjiSo 1.11: mocemulia bmuli sia da misi erT-erTi elementis misamarTi x. agreTve mocemulia
raRaca mniSvneloba M. dawereT brZanebaTa mimdevroba, romelTa meSveobiTac SeiZleba imis dadgena,
gvxvdeba Tu ara bmul siaSi elementis Canaweri, romlis mniSnvelobacaa M (anu, sxva sityvebiT rom
savarjiSo 1.12: mocemulia n elementiani bmuli sia. gamoiangariSeT am siaSi elementis Camatebasa da
savarjiSo 1.13: mocemulia Cveulebrivi masivi, romelic Sedgeba n elementisagan. dawereT am masivSi