JAVA 反转链表

createh53个月前 (04-09)技术教程24

输入一个链表,反转链表后,输出新链表的表头。

/*

public class ListNode {

int val;

ListNode next = null;


ListNode(int val) {

this.val = val;

}

}*/

public class Solution {

public ListNode ReverseList(ListNode head) {

// 判断链表为空或长度为1的情况

if(head == null || head.next == null){

return head;

}

ListNode pre = null; // 当前节点的前一个节点

ListNode next = null; // 当前节点的下一个节点

while( head != null){

next = head.next; // 记录当前节点的下一个节点位置;

head.next = pre; // 让当前节点指向前一个节点位置,完成反转

pre = head; // pre 往右走

head = next;// 当前节点往右继续走

}

return pre;

}

}

相关文章

实现字符串的反转。如:abcd 输出dcba

public class StringReverse { // 方法1: 使用 StringBuilder 的 reverse() 方法 (推荐,高效简洁) public stati...

Java面试中常见的算法题型

Java面试中常见的算法题型各位小伙伴们,今天咱们来聊聊Java面试中那些让人“脑细胞爆炸”的算法题!这些题目看似简单,但如果你没做好准备,它们可能会像一条条调皮的小泥鳅一样从你的指缝中溜走。不过别担...

Java面试场景题及答案最全总结(2025版持续更新)

大家好,我是Java面试陪考员最近很多小伙伴在忙着找工作,给大家整理了一份非常全面的Java面试题及答案。涉及的内容非常全面,包含:并发编程、Web、SpringBoot、MySQL、Linux、Sp...

Java面试高频算法题总结:从入门到精通

Java面试高频算法题总结:从入门到精通大家好呀!今天我们来聊聊Java面试中那些让人头疼却又不得不面对的算法题。这些题目就像考试里的压轴大题一样,总是出现在各种大厂面试中。别担心,我今天就带大家梳理...

「每日一题」反转字符串

题目:编写一个函数,其作用是将输入的字符串反转过来。输入字符串以字符数组 s 的形式给出。请注意 :不要给另外的数组分配额外的空间,你必须原地修改输入数组、使用 O(1) 的额外空间解决这一问题。解题...