Skip to content

Курсач по СМП на тему "Persistent data structure"

Notifications You must be signed in to change notification settings

koshi8bit/nsu-sdt-pds

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

nsu-sdt-pds

Курсач по СМП на тему "Persistent data structure"

Пресистентность в Кожуре

Задание

Требования: реализуйте библиотеку со следующими структурами данных в persistent-вариантах:

  • Массив (константное время доступа, переменная длинна)
  • Двусвязный список
  • Ассоциативный массив (на основе Hash-таблицы, либо бинарного дерева)
  • Должен быть единый API для всех структур, желательно использовать естественный API для выбранной платформы

Дополнительные требования

  • Обеспечить произвольную вложенность данных (по аналогии с динамическими языками), не отказываясь при этом полностью от типизации посредствомgeneric/template.
  • Реализовать универсальныйundo-redo механизм для перечисленных структур с поддержкой каскадности (для вложенных структур)
  • Реализовать более эффективное по скорости доступа представление структур данных, чем fat-node
  • Расширить экономичное использование памяти на операцию преобразования одной структуры к другой (например, списка в массив)
  • Реализовать поддержку транзакционной памяти STM (?atom VS ref. agent мб очередь операций с пуллом потоков VS actor)

Ссылки

Инфа

Классы в java

Классы в java

Виды пресистентности

Виды пресистентности

Как че вообще

Можно представить дерево в виде списка, и делать вставку за O(1). Обход дерева указан на рисунке ниже (красным) Виды пресистентности

About

Курсач по СМП на тему "Persistent data structure"

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages