LinkedList - это одна из реализаций интерфейса List в языке программирования Java. Он представляет собой двусвязный список, где каждый элемент содержит ссылку на предыдущий и следующий элементы. Это позволяет эффективно добавлять и удалять элементы из списка.
Особенности LinkedList:
Двусвязный список: Каждый элемент списка содержит ссылку на предыдущий и следующий элементы. Это обеспечивает эффективные операции вставки и удаления элементов в середине списка.
Неупорядоченный список: Элементы в LinkedList не имеют определенного порядка. Они хранятся в порядке добавления и могут быть получены с помощью итератора.
Быстрая вставка и удаление: Вставка и удаление элементов в LinkedList выполняются за константное время O(1), если известна позиция элемента. Однако, поиск элемента в LinkedList выполняется за линейное время O(n).
Неэффективный доступ к элементам: Доступ к элементам LinkedList выполняется за линейное время O(n), так как для получения элемента необходимо пройти по всему списку от начала или конца.
Пример использования LinkedList:
import java.util.LinkedList;
public class LinkedListExample {
public static void main(String[] args) {
// Создание объекта LinkedList
LinkedList<String> linkedList = new LinkedList<>();
// Добавление элементов в список
linkedList.add("Элемент 1");
linkedList.add("Элемент 2");
linkedList.add("Элемент 3");
// Вывод списка на экран
System.out.println("Список: " + linkedList);
// Получение элемента по индексу
String element = linkedList.get(1);
System.out.println("Элемент по индексу 1: " + element);
// Удаление элемента по значению
linkedList.remove("Элемент 2");
// Вывод списка на экран после удаления
System.out.println("Список после удаления: " + linkedList);
}
}
В этом примере создается объект LinkedList, добавляются элементы в список, получается элемент по индексу и удаляется элемент по значению. Результатом выполнения программы будет:
Список: [Элемент 1, Элемент 2, Элемент 3]
Элемент по индексу 1: Элемент 2
Список после удаления: [Элемент 1, Элемент 3]
LinkedList предоставляет множество методов для работы с элементами списка, таких как добавление, удаление, получение элементов, а также методы для работы с итератором и другими операциями.
Если вам понравилось, буду признателен за подписку.