215
правок
Изменения
Стек
,→На саморасширяющемся массиве
Ключевые поля:
* <tex>s[0..n-1]</tex> {{---}} старый массив, в котором хранится стек
* <tex>newSnewStack[0..size*2-1]</tex> {{---}} новый массив, в котором хранится стек
* <tex>head</tex> {{---}} верхушка стека
* <tex>size</tex> {{---}} размер стека
'''function''' push(element):
'''if''' head == size - 1
size = size * 2
head++
head--
'''if''' head < size / 4
'''for''' i = 0 '''to''' size / 4
size = size / 2
'''return''' s[temp]