Изменения

Перейти к: навигация, поиск

Дек

45 байт убрано, 14:58, 10 января 2016
Простая реализация
Дек расходует только <tex>O(n)</tex> памяти, на хранение самих элементов.
=== Простая реализация ===
В данной реализации изначально <tex> \mathtt{head = n- 1} </tex> и <tex> \mathtt{tail = n- 1} </tex>.
Ключевые поля:
* <tex>\mathtt{d[0\dots 2 \times n - 1]}</tex> {{---}} массив, с помощью которого реализуется дек, способный вместить не более <tex>n</tex> элементов,
'''function''' pushBack(x : '''T'''):
d[tail++] = x tail++
'''T''' popBack():
'''if''' (empty())
'''return''' <span style="color:red">error</span> "underflow"
tail-- '''return''' d[--tail]
'''function''' pushFront(x : '''T'''):
headd[-- d[head] = x
'''T''' popFront():
'''if''' (empty())
'''return''' <span style="color:red">error</span> "underflow"
'''Treturn''' ret = d[head] head++ '''return''' ret]
=== Циклический дек на массиве константной длины ===
Анонимный участник

Навигация