Atšķirība starp vienoti saistītu sarakstu un divkārši saistītu sarakstu

Vienoti saistīts saraksts ar divkārši saistītu sarakstu

Saistītais saraksts ir lineāra datu struktūra, ko izmanto datu kolekcijas glabāšanai. Saistītais saraksts piešķir atmiņu saviem elementiem atsevišķi savā atmiņas blokā, un kopējo struktūru iegūst, sasaistot šos elementus kā saites ķēdē. Atsevišķi savienotu sarakstu veido mezglu secība, un katram mezglam ir atsauce uz nākamo mezglu secībā. Divkārt savienotajā sarakstā ir mezglu secība, kurā katrs mezgls satur atsauci uz nākamo mezglu, kā arī uz iepriekšējo mezglu.

Vienoti saistīts saraksts

Katram atsevišķi sasaistītā saraksta elementam ir divi lauki, kā parādīts 1. attēlā. Datu lauks satur faktiskos saglabātos datus, un nākamais lauks satur atsauci uz nākamo ķēdes elementu. Pirmais saistītā saraksta elements tiek saglabāts kā saistītā saraksta galviņa.

2. attēlā parādīts atsevišķi savienots saraksts ar trim elementiem. Katrs elements saglabā savus datus un visus elementus, izņemot pēdējo, - atsauci uz nākamo elementu. Pēdējais elements nākamajā laukā tur nulles vērtību. Jebkuram saraksta elementam var piekļūt, sākot ar galvu un sekojot nākamajam rādītājam, līdz sasniedzat vajadzīgo elementu.

Divkārši saistīts saraksts

Katrā divkārši saistītā saraksta elementā ir trīs lauki, kā parādīts 3. attēlā. Līdzīgi kā atsevišķi savienotajam sarakstam, datu lauks satur faktiski saglabātos datus, un nākamais lauks satur atsauci uz nākamo ķēdes elementu. Turklāt iepriekšējā laukā ir atsauce uz iepriekšējo ķēdes elementu. Pirmais saistītā saraksta elements tiek saglabāts kā saistītā saraksta galviņa.

4. attēlā ir attēlots divkārši saistīts saraksts ar trim elementiem. Visi starpposma elementi satur atsauces uz pirmo un iepriekšējo elementu. Pēdējam saraksta elementam nākamajā laukā ir nulles vērtība, bet saraksta pirmajam elementam iepriekšējā laukā ir nulles vērtība. Divkārt savienoto sarakstu var virzīt uz priekšu, sekojot nākamajām atsaucēm katrā elementā, un līdzīgi to var šķērsot atpakaļ, izmantojot katra elementa iepriekšējās atsauces..

Kāda ir atšķirība starp Singly Linked List un Doubly Linked List?

Katrs atsevišķi savienotā saraksta elements satur atsauci uz nākamo saraksta elementu, savukārt katrs divkārši saistītā saraksta elements satur atsauces uz nākamo elementu, kā arī uz iepriekšējo elementu sarakstā. Divkārt saistītiem sarakstiem ir nepieciešams vairāk vietas katram saraksta elementam, un tādas elementāras darbības kā ielikšana un izdzēšana ir sarežģītākas, jo tām ir jānodarbojas ar divām atsaucēm. Bet ar divkāršu saišu sarakstiem ir vieglāk manipulēt, jo tas ļauj sarakstu virzīt uz priekšu un atpakaļ.