
79
Выбор структуры
Таким образом, можно начать с обоих концов списка и обойти
его в любом направлении. В результате можно добавлять и уда-
лять элементы из начала и конца списка за постоянное время!
В табл. 5.1 приведены результаты, которые мы ожидаем от
ArrayList, MyLinkedList (односвязный) и LinkedList (двусвяз-
ный).
Таблица 5.1. Результаты, ожидаемые от ArrayList, MyLinkedList
и LinkedList
Операция MyArrayList MyLinkedList LinkedList
add (в конец) 1 n 1
add (в начало) n 1 1
add (в общем случае) n n n
get/set 1 n n
indexOf/lastIndexOf n n n
isEmpty/size 1 1 1
remove (из конца) 1 n 1
remove (из начала) n 1 1
remove (в общем случае) n n n
Выбор структуры
Двусвязная ...