高频考题

方法一:

三指针

  1. class Solution {
  2. //顺序
  3. public ListNode reverseList(ListNode head) {
  4. if (head == null || head.next == null) {
  5. return head;
  6. }
  7. ListNode pre = null, now = head, next = null;
  8. while (now != null) {
  9. next = now.next;
  10. now.next = pre;
  11. pre = now;
  12. now = next;
  13. }
  14. return pre;
  15. }
  16. }

方法二:

  1. 递归