java 实现发转链表
时间: 2023-06-13 18:09:14 浏览: 54
Java 实现反转链表的方法如下:
1. 定义一个 ListNode 类,表示链表的每个节点,包含节点值 val 和指向下一个节点的指针 next。
```java
public class ListNode {
int val;
ListNode next;
ListNode(int val) {
this.val = val;
}
}
```
2. 定义一个 reverseList 方法,接收链表的头节点 head,返回翻转后的链表头节点。
```java
public ListNode reverseList(ListNode head) {
ListNode prev = null;
ListNode curr = head;
while (curr != null) {
ListNode next = curr.next;
curr.next = prev;
prev = curr;
curr = next;
}
return prev;
}
```
3. 在 main 函数中构建测试链表,调用 reverseList 方法进行翻转,并输出翻转后的链表。
```java
public static void main(String[] args) {
ListNode head = new ListNode(1);
head.next = new ListNode(2);
head.next.next = new ListNode(3);
head.next.next.next = new ListNode(4);
head.next.next.next.next = new ListNode(5);
ListNode reversedHead = reverseList(head);
while (reversedHead != null) {
System.out.print(reversedHead.val + "->");
reversedHead = reversedHead.next;
}
System.out.print("null");
}
```
上述代码执行结果为:
```
5->4->3->2->1->null
```