📜  Java程序实现LinkedList

📅  最后修改于: 2020-09-26 18:51:53             🧑  作者: Mango

在这个例子中,我们将学习用Java实现链表数据结构。

示例1:实现LinkedList的Java程序
class LinkedList {

  // create an object of Node class
  // represent the head of the linked list
  Node head;

  // static inner class
  static class Node {
    int value;

    // connect each node to next node
    Node next;

    Node(int d) {
      value = d;
      next = null;
    }
  }

  public static void main(String[] args) {

    // create an object of LinkedList
    LinkedList linkedList = new LinkedList();

    // assign values to each linked list node
    linkedList.head = new Node(1);
    Node second = new Node(2);
    Node third = new Node(3);

    // connect each node of linked list to next node
    linkedList.head.next = second;
    second.next = third;

    // printing node-value
    System.out.print("LinkedList: ");
    while (linkedList.head != null) {
      System.out.print(linkedList.head.value + " ");
      linkedList.head = linkedList.head.next;
    }
  }
}

输出

LinkedList: 1 2 3 

在上面的示例中,我们已经用Java实现了单链表。在这里,链表由3个节点组成。

每个节点都由valuenext组成value变量表示节点的值, 下一个变量表示到下一个节点的链接。

要了解LinkedList的工作原理,请访问LinkedList数据结构。


示例2:使用LinkedList类实现LinkedList

Java提供了一个内置的LinkedList类,可用于实现链接列表。

import java.util.LinkedList;

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

    // create a linked list using the LinkedList class
    LinkedList animals = new LinkedList<>();

    // Add elements to LinkedList
    animals.add("Dog");

    // add element at the beginning of linked list
    animals.addFirst("Cat");

    // add element at the end of linked list
    animals.addLast("Horse");
    System.out.println("LinkedList: " + animals);

    // access first element
    System.out.println("First Element: " + animals.getFirst());

    // access last element
    System.out.println("Last Element: " + animals.getLast());
    }
}

输出

LinkedList: [Cat, Dog, Horse]
First Element: Cat 
Last Element: Horse

在上面的示例中,我们使用LinkedList类在Java中实现了链表。在这里,我们使用了类提供的方法从链表中添加元素和访问元素。

注意,我们在创建链接列表时使用了尖括号(<>)。它表示链表是通用类型。