21xrx.com
2024-11-22 14:29:08 Friday
登录
文章检索 我的文章 写文章
Java前辈分享:如何用Java实现链表数据结构
2023-06-15 18:17:14 深夜i     --     --
Java数据结构 链表 Java前辈

在学习Java数据结构的过程中,我们经常会接触到链表这种数据结构。链表实现起来需要指针等复杂操作,对于初学者来说往往会有些吃力。那么,今天我们就来看一下Java前辈是如何实现链表这个数据结构的。

Java前辈首先将链表的节点定义如下:


class ListNode {

  int val;

  ListNode next;

  ListNode(int x)

    val = x;

    next = null;

  

}

接下来,Java前辈实现了一个链表类LinkedList,其中包括链表的常见操作,如插入节点、删除节点、查找节点等等。具体代码如下:


public class LinkedList {

  private ListNode head;

  public void addNode(int val) {

    ListNode newNode = new ListNode(val);

    if(head == null)

      head = newNode;

      return;

    

    ListNode curr = head;

    while(curr.next != null)

      curr = curr.next;

    

    curr.next = newNode;

  }

  public void deleteNode(int val) {

    if(head == null)

      return;

    

    if(head.val == val)

      head = head.next;

      return;

    

    ListNode curr = head;

    while(curr.next != null) {

      if(curr.next.val == val)

        curr.next = curr.next.next;

        return;

      

      curr = curr.next;

    }

  }

  public ListNode findNode(int val) {

    ListNode curr = head;

    while(curr != null) {

      if(curr.val == val)

        return curr;

      

      curr = curr.next;

    }

    return null;

  }

  public void printLinkedList() {

    ListNode curr = head;

    while(curr != null) {

      System.out.print(curr.val + " ");

      curr = curr.next;

    }

    System.out.println();

  }

}

Java前辈还在自己的博客中分享了如何使用这个链表类,以及链表类的测试代码。这代表Java前辈非常热心并愿意分享自己的知识和经验,这种精神值得我们学习。

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复