链表。。。。
创始人
2024-11-11 21:09:16
0次

在Java中,手写实现链表结构通常涉及定义链表节点(ListNode)类和链表(LinkedList)类。链表节点通常包含数据部分和指向下一个节点的引用。链表类则包含一系列方法来操作链表,如添加、删除、查找等。

以下是一个简单的单向链表实现的示例:

链表节点类(ListNode)

public class ListNode {
int val; // 节点的值
ListNode next; // 指向下一个节点的引用
// 构造函数
public ListNode(int val) {
this.val = val;
this.next = null;
}
}

链表类(LinkedList)

public class LinkedList {
private ListNode head; // 链表的头节点
// 构造函数
public LinkedList() {
this.head = null;
}
// 在链表末尾添加元素
public void add(int val) {
ListNode newNode = new ListNode(val);
if (head == null) {
head = newNode;
} else {
ListNode current = head;
while (current.next != null) {
current = current.next;
}
current.next = newNode;
}
}
// 打印链表
public void printList() {
ListNode current = head;
while (current != null) {
System.out.print(current.val + " -> ");
current = current.next;
}
System.out.println("null");
}
// 其他方法(例如删除节点、查找节点等)可以按需添加
// 示例:删除链表中的某个值(删除第一个匹配的值)
public void delete(int val) {
if (head == null) return;
if (head.val == val) {
head = head.next;
return;
}
ListNode current = head;
while (current.next != null) {
if (current.next.val == val) {
current.next = current.next.next;
return;
}
current = current.next;
}
}
}

使用示例

public class Main {
public static void main(String[] args) {
LinkedList list = new LinkedList();
list.add(1);
list.add(2);
list.add(3);
list.printList(); // 输出:1 -> 2 -> 3 -> null
list.delete(2);
list.printList(); // 输出:1 -> 3 -> null
}
}

以上代码展示了如何定义一个简单的单向链表,包括链表节点类和链表类,并提供了添加元素和打印链表的方法。还展示了如何删除链表中的第一个匹配元素。当然,链表还有很多其他操作,如插入节点到指定位置、查找节点等,可以根据需要进行实现。

相关内容

热门资讯

菠萝智星德州详情!wepoke... 菠萝智星德州详情!wepoker是不是技术越好牌就越好(透视),原本真的是有透视软件主打赛后复盘的 ...
WePoKer有挂!微扑克发牌... WePoKer有挂!微扑克发牌真的很假(辅助),竟然是真的有辅助软件是一款可以让一直输的玩家,快速成...
红龙PoKer必备!wepok... 您好,wepoker开挂透视方法这款游戏可以开挂的,确实是有挂的,需要了解加微【136704302】...
德州扑克科普!德扑之星辅助下载... 您好,德扑之星辅助下载这款游戏可以开挂的,确实是有挂的,需要了解加微【485275054】很多玩家在...
aapoker总结!微扑克辅助... aapoker总结!微扑克辅助封号(辅助器),总是真的有辅助器安装是一款可以让一直输的玩家,快速成为...
微扑克普及!AlphaQ德州辅... 微扑克普及!AlphaQ德州辅助怎么样(辅助器),一向是真的有辅助器安装主打赛后复盘的 AI 游戏攻...
德州扑克必备!德州辅助app官... 您好,德州辅助app官方最新版本介绍大全这款游戏可以开挂的,确实是有挂的,需要了解加微【136704...
智星菠萝德州关于!德扑之星开挂... 智星菠萝德州关于!德扑之星开挂辅助器(辅助器),先前是有辅助器神器是一款可以让一直输的玩家,快速成为...
菠萝智星德州揭露!德扑之星系统... 您好:德扑之星系统规律这款游戏可以开挂的,确实是有挂的,很多玩家在这款游戏中打牌都会发现很多用户的牌...
WOK关于!wepoker辅助... WOK关于!wepoker辅助挂是什么(透视挂),原本是真的有透视挂软件AI 智能体黑科技再上新,自...