структури от данни - стек преливане на Руски

При какви структури от данни са? (Можете да посочите името на структурата в даден език за програмиране) Искам да знам целта си, силни и слаби страни. Той също се интересува от класирането, независимо дали в вярно уики писмено? Списък на структури от данни Дългият отговор, докато не е необходимо всяка структура, само за кратко, например, да се каже какво е предимството на тази структура върху друга (например, най-бързо време за достъп до елемента, способността да се променя динамично, размера на паметта и т.н.) може при всички наведнъж, не е необходимо отговор, изведнъж отговорът ще бъде значителна сума, която в най-малко една от структурите, които могат да се отпишете познавам добре, а аз ще добавя към главния пост информация. Много удобно да имат пред очите ми списък от него и проверих избирате.

1. линейни структури от данни - структура от данни, при което преходът от една клетка към друга не зависи от всички логически условия, т.е. само безусловни свързващи елементи се използват линейни структури.

1.1 Списък Can всички същите като на масива, но ви позволява да добавяте елементи към всяко място, изтрийте елементите от всяко място и да получи сегашната броя на елементите.

1.2 асоциативен масив

  • хеш таблици Важно свойство е, че при някои разумни предположения, всичките три операции (търсене, вмъкване, изтриване елементи) средно се извършват в O (1) време в най-лошия случай - O (N).
  • Итерация не е в ред на увеличаване на ключове
  • "И с повтаряне на" необходимостта от увеличаване на броя на съхраняваните предмети (?)
  • не може да бъде приложен бързо течаща допълнителни операции MIN, MAX и алгоритъм за търсене на всички съхранени двойки в възходящ или низходящ ред на ключове (?)
  • Тя не поддържа реда и не се запази реда на елементи (?)
  • възможността от сблъсък

1.4 Stack Комплект от елементи от същия тип, разположен така, че да се добави и извличане на елементите могат да бъдат само в единия край. Операции: добавяне на елемент към стека, стека, за да получите последния добавен елемент, проверете дали стека е празен.

1.5 Опашка Комплект от елементи от същия тип, разположени така, че те да могат да се добавят само в единия край, и да получава - в другия край. Операции: добавят елемент в списъка на чакащите, за да получите по първа точка от опашката, получават размер опашка.

1.5.1 приоритет Queue

1.6 през декември - специален вид линия. Декември (от английски DEQ - с два края на опашката, т.е. опашка с два края.) - е пореден списък, в който включването или изключването на компоненти, може да бъде всеки от двата края на списъка. Специален случай на палубата - палуба с ограничен вход и тераса с ограничен изход.

  • десен елемент ключ;
  • оставен ключ елемент;
  • изключение от дясната елемент;
  • Изключение позиция на ляво;
  • определяне на размера;
  • почистване.

2.2.3 червено-черно дърво

Основната цел: B-дървото, за да записва информация на вашия твърд диск. Случаен достъп до твърдия диск е много голям (милисекунди), тъй като се определя скоростта на въртене на диска и главата движения. Ето защо е важно да се намали броят на възлите да се гледа на всяка операция, т.е. височината на дървото, което се постига чрез високо разклонения.

  • Във всички случаи, да бъдат оползотворени вторичен пространство за съхранение заема повече от 50%. С висока степен на памет полезно е без влошаване на качеството на обслужване.
  • Случайни запис достъп се осъществява чрез малък брой suboperations (по отношение на физическите блокове).
  • Като цяло, се прилага ефективно затваряне на работа и изтриване на записи; при запазване на естествения ред на ключовете за целите на наследяване, както и намирането на подходящ баланс на дървото за бърз произволен достъп.
  • Фиксирана подредени по ключови разрешителни ефективна обработка на партида
  • Основният недостатък на B-дървото е липсата на средства за вземане на проби, които вторичните основните данни.

2.2.6 двоично дърво за търсене

2.2.6.1 самобалансиращи търсене дървета

2.2.6.1.1.1 Фибоначи дърво

2.2.6.1.2 червено-черно дърво

2.2.6.1.3 Разширяване дърво

2.2.7.2 биномиално купчина

2.2.7.3 Фибоначи купчина

2.2.8 Суфикс дърво

2.2.8 синтактично дърво

Има следното разпределение на структурите:

Статичните структури от данни

Полу-статичен структура на данните

Динамични структури от данни

Нелинейни структура на данните

общ преглед на описанието на структури:

-основната цел, описанието

-готов изпълнение на езика за програмиране (име на функция или клас)

(?) - съмнения, моля, поправете, ако изведнъж неправилно изписана одобрява или обратно, за да се избегне двусмислие.

  • Array. Разположен на фиксиран брой от един вид елементи, които имат възможност да четат или пишат индекс елемент.
  • Списък. Може би всички едно и също нещо като масив, но ви позволява да добавяте елементи към всяко място, изтрийте елементите от всяко място и да получи сегашната броя на елементите.
  • Определете. Неподреден набор от елементи от същия тип, всеки от които може да се намери в набора от не повече от веднъж. Принцип на работа на множество: добавяне на елемент в комплекта, премахване на елемента от комплекта, за да проверите дали даден елемент в комплекта, получавайки множество размери.
  • Речник. Неподреден набор от два вида елементи, при което всеки елемент от първия тип е свързан с един елемент от втори тип, и всеки елемент от първия тип (ключ) може да се появи в речника най-много веднъж. Основни функции на речника: добавяне на един чифт двойки "ключ-стойност" в ключов отстраняване, проверете за ключа в речника, получаване на стойности на ключа, получаване на броя на двойки "ключ-стойност".
  • Място. Разположен на елементи от един и същи тип, разположени така, че те да могат да се добавят само в единия край, и да получава - в другия край. Операции: добавят елемент в списъка на чакащите, за да получите по първа точка от опашката, получават размер опашка.
  • Stack. Разположен на елементи от един и същи тип, разположен така, че да се добави и извличане на елементите могат да бъдат само в единия край. Операции: добавяне на елемент към стека, стека, за да получите последния добавен елемент, проверете дали стека е празен.