• Java 資料結構 教程

Java 資料結構 - 連結串列類



介紹

java.util.LinkedList 類的操作執行了我們可以期望的雙向連結串列操作。索引到列表的操作將從開頭或結尾遍歷列表,以靠近指定索引者為準。

類宣告

以下是 java.util.LinkedList 類的宣告:-

public class LinkedList<E>
   extends AbstractSequentialList<E>
   implements List<E>, Deque<E>, Cloneable, Serializable

引數

以下是 java.util.LinkedList 類的引數:-

  • E - 這是此集合中儲存的元素的型別。

欄位

從類 java.util.AbstractList 繼承的欄位。

類建構函式

序號 建構函式和描述
1

LinkedList()

這會構造一個空列表。

2

LinkedList(Collection<? extends E> c)

這會構造一個包含指定集合中元素的列表,其順序與集合的迭代器返回的順序相同。

類方法

序號 方法和描述
1

boolean add(E e)

此方法將指定的元素追加到此列表的末尾。

2

void add(int index, E element)

此方法在此列表的指定位置插入指定的元素。

3

boolean addAll(Collection<? extends E> c)

此方法將指定集合中的所有元素追加到此列表的末尾,其順序與指定集合的迭代器返回的順序相同。

4

boolean addAll(int index, Collection<? extends E> c)

此方法將指定集合中的所有元素插入到此列表中,從指定位置開始。

5

void addFirst(E e)

此方法返回在該列表的開頭插入指定的元素。

6

void addLast(E e)

此方法返回將指定的元素追加到此列表的末尾。

7

void clear()

此方法從此列表中刪除所有元素。

8

Object clone()

此方法返回返回此 LinkedList 的淺複製。

9

boolean contains(Object o)

如果此列表包含指定的元素,則此方法返回 true。

10

Iterator<E> descendingIterator()

此方法返回一個迭代器,用於反向順序遍歷此雙端佇列中的元素。

示例

package com.tutorialspoint;

import java.util.*;

public class LinkedListDemo {
   public static void main(String[] args) {

      // create a LinkedList
      LinkedList list = new LinkedList();

      // add some elements
      list.add("Hello");
      list.add(2);
      list.add("Chocolate");
      list.add("10");

      // print the list
      System.out.println("LinkedList:" + list);

      // add a new element at the end of the list
      list.add("Element");

      // print the updated list
      System.out.println("LinkedList:" + list);
   }
}

輸出

LinkedList:[Hello, 2, Chocolate, 10]
LinkedList:[Hello, 2, Chocolate, 10, Element]

連結串列是一系列包含專案的連結。每個連結都包含到另一個連結的連線。連結串列是陣列之後第二常用的資料結構。

連結串列表示

連結串列可以被視覺化為節點鏈,其中每個節點都指向下一個節點。

Linked List Representation
  • 每個連結串列都包含頭和節點。

  • 每個節點都儲存資料和下一個元素的地址。

  • 列表的最後一個元素為 null,標記列表的結束。

連結串列有三種類型

  • 簡單鏈表 - 專案導航僅向前。

  • 雙向連結串列 - 專案可以向前和向後導航。

  • 迴圈連結串列 - 最後一個專案包含下一個元素的第一個元素的連結,而第一個元素包含前一個元素的最後一個元素的連結。

廣告

© . All rights reserved.