链表反转
2025-02-12
NEW个对象
class Solution {
public ListNode reverseList(ListNode head) {
if(head == null){
return head;
}
ListNode pre = null;
ListNode cur = head;
while(cur != null){
ListNode temp = cur.next;
cur.next = pre;
pre = cur;
cur = temp;
}
return pre;
}
//在将来如何快速理解链表反转
//cur指向pre,pre移动到cur的位置,cur移动到next的位置,next移动到next的位置
// pre cur next
//null 1 -> 2 -> 3 -> 4 -> 5 -> null
// pre cur next
//null <- 1 2 -> 3 -> 4 -> 5 -> null
// pre cur next
//null <- 1 <- 2 3 -> 4 -> 5 -> null
// pre cur next 直到cur为null结束为止,返回pre
//null <- 1 <- 2 <- 3 <- 4 <- 5 null
}
上一篇:有哪些数据安全的方案?
下一篇:如何创建线程池?
相关文章
-
BigDecimal
为什么不能用BigDecimal的equals方法做等值比较? 两个BigDecimal的数值进行比较的话,可以使用compareTo方法。 以:0.1和0.10为例子,equals会比较value和精度,很显然这两个数的精度不一样,会返回false
NEW个对象 2025-02-11
-
java代码,随机打乱一个数组
问题1:j不会越界吗? next生成数在【0到i+1】之间。 问题2:代码的具体逻辑 生成一个【0到i+1】的之间的随机数,与【i】进行互换
NEW个对象 2025-02-21
-
什么是反射机制?为什么慢?
反射机制是指在运行时能获取到自身信息,只要给出类名,就可以访问类的属性和方法。
NEW个对象 2025-01-09