Я пытаюсь перечислить временные сложности операций общих структур данных, таких как массивы, двоичное дерево поиска, куча, связанный список и т.д., и особенно я имею в виду Java. Они очень распространены, но я думаю, некоторые из нас не на 100% уверены в точном ответе. Любая помощь, особенно ссылки, очень ценится.
например. Для односвязного списка: Изменение внутреннего элемента - O (1). Как вы можете это сделать? Вам нужно выполнить поиск элемента перед его заменой. Кроме того, для вектора добавление внутреннего элемента дается как O (n). Но почему мы не можем это сделать в амортизированном постоянном времени с использованием индекса? Пожалуйста, поправьте меня, если я что-то упустил.
Я публикую свои выводы/догадки в качестве первого ответа.