Видео: Разлика между масиви и свързани списъци
2024 Автор: Mildred Bawerman | [email protected]. Последно модифициран: 2023-12-16 08:37
Масиви срещу свързани списъци
Масивите са най-често използваната структура от данни за съхраняване на колекция от елементи. Повечето езици за програмиране предоставят методи за лесно деклариране на масиви и елементи за достъп в масивите. Свързаният списък, по-точно единично свързан списък, също е структура от данни, която може да се използва за съхраняване на колекция от елементи. Състои се от последователност от възли и всеки възел има препратка към следващия възел в последователността.
Показаният на фигура 1 е парче код, обикновено използвано за деклариране и присвояване на стойности на масив. Фигура 2 изобразява как би изглеждал масив в паметта.
По-горе кодът дефинира масив, който може да съхранява 5 цели числа и до тях се осъществява достъп с помощта на индекси от 0 до 4. Едно важно свойство на масива е, че целият масив се разпределя като единичен блок памет и всеки елемент получава собствено пространство в масива. След като се дефинира масив, размерът му е фиксиран. Така че, ако не сте сигурни за размера на масива по време на компилиране, ще трябва да дефинирате достатъчно голям масив, за да бъде в безопасната страна. Но през повечето време всъщност ще използваме по-малък брой елементи, отколкото сме определили. Така че всъщност се губи значително количество памет. От друга страна, ако „достатъчно големият масив“всъщност не е достатъчно голям, програмата ще се срине.
Свързаният списък разпределя паметта към нейните елементи отделно в собствения си блок памет и цялостната структура се получава чрез свързване на тези елементи като връзки във верига. Всеки елемент в свързания списък има две полета, както е показано на Фигура 3. Полето с данни съдържа действително съхранените данни, а следващото поле съдържа препратката към следващия елемент във веригата. Първият елемент от свързания списък се съхранява като глава на свързания списък.
данни | следващия |
Фигура 3: Елемент на свързан списък
Фигура 4 изобразява свързан списък с три елемента. Всеки елемент съхранява своите данни, а всички елементи с изключение на последния съхраняват препратка към следващия елемент. Последният елемент съдържа нулева стойност в следващото си поле. Всеки елемент в списъка може да бъде достъпен, като се започне от главата и се следва следващият указател, докато се изпълни необходимия елемент.
Въпреки че масивите и свързаните списъци са сходни в смисъл, че и двата се използват за съхраняване на колекция от елементи, те пораждат разлики поради стратегиите, които използват за разпределяне на паметта към неговите елементи. Масивите разпределят паметта за всичките й елементи като единичен блок и размерът на масива трябва да бъде определен по време на изпълнение. Това би направило масивите неефективни в ситуации, когато не знаете размера на масива по време на компилация. Тъй като свързаният списък разпределя паметта по отделно за своите елементи, би бил много ефективен в ситуации, в които не знаете размера на списъка по време на компилиране. Декларирането и достъпът до елементи в свързан списък няма да бъдат директни в сравнение с начина, по който директно осъществявате достъп до елементи в масив, използвайки неговите индекси.
Препоръчано:
Разлика между рецептори, свързани с G протеин и рецепторни тирозин кинази
Ключовата разлика между рецепторите, свързани с G протеин и рецепторните тирозин кинази, е, че рецепторите, свързани с G протеин, могат да задействат само една клетъчна респ
Разлика между ЕМП и потенциална разлика
EMF срещу потенциална разлика (електромоторна сила) се използват за описване на два различни параметъра между две точки. Терминът „потенциална разлика“е ге
Разлика между масиви и списъци с паралели
Масиви срещу Arraylists Масивите са най-често използваната структура от данни за съхраняване на колекция от елементи. Повечето езици за програмиране предоставят методи за улеснение
Разлика между свързани и несвързани гени
Ключова разлика - Свързани срещу несвързани гени Гените са специфичните ДНК последователности в хромозомите. В човешкия геном има 46 хромозоми. Между тях
Разлика между ключовата разлика между металните и неметалните минерали
Ключова разлика - метални срещу неметални минерали Минералът е естествено срещаща се твърда и неорганична съставка с определена химическа формула и