【发布时间】:2022-12-05 06:45:22
【问题描述】:
你如何在没有递归的情况下反转单向链表?
【问题讨论】:
-
移除头部元素;将其推到新列表的头部;重复直到完成。
-
任何可以递归完成的事情,也可以迭代完成。我真的不明白这个问题。
你如何在没有递归的情况下反转单向链表?
【问题讨论】:
这是迭代解决方案。
public ListNode reverseList(ListNode A) {
ListNode curr = A;
ListNode prev = null;
ListNode nxt = null;
while(curr!=null){
nxt = curr.next;
curr.next = prev;
prev = curr;
curr = nxt;
}
return prev;
}
【讨论】: