• LeetCode Reverse Linked List (反置链表)


    题意:

      将单恋表反转。

    思路:

      两种方法:迭代和递归。 

      递归 

     1 /**
     2  * Definition for singly-linked list.
     3  * struct ListNode {
     4  *     int val;
     5  *     ListNode *next;
     6  *     ListNode(int x) : val(x), next(NULL) {}
     7  * };
     8  */
     9 class Solution {
    10 public:
    11     ListNode* give_me_your_son( ListNode* far, ListNode* son)
    12     {
    13         if(!son)    return far;     //far就是链表尾了
    14         ListNode* tmp=son->next;
    15         son->next=far;
    16         return give_me_your_son( son, tmp);
    17     }
    18 
    19     ListNode* reverseList(ListNode* head) {
    20         if(!head||!head->next)   return head;
    21         return give_me_your_son(0,head);
    22     }
    23 };
    AC代码

    python3

      迭代

     1 # Definition for singly-linked list.
     2 # class ListNode(object):
     3 #     def __init__(self, x):
     4 #         self.val = x
     5 #         self.next = None
     6 
     7 class Solution(object):
     8     def reverseList(self, head):
     9         """
    10         :type head: ListNode
    11         :rtype: ListNode
    12         """
    13         top=None
    14         while head:
    15              top,head.next,head=head,top,head.next
    16         return top
    AC代码

      递归

     1 # Definition for singly-linked list.
     2 # class ListNode(object):
     3 #     def __init__(self, x):
     4 #         self.val = x
     5 #         self.next = None
     6 
     7 class Solution(object):
     8     def reverseList(self, head, pre=None):
     9         """
    10         :type head: ListNode
    11         :rtype: ListNode
    12         """
    13         if not head:    return pre
    14         back=head.next
    15         head.next=pre    
    16         return self.reverseList(back, head)
    AC代码
  • 相关阅读:
    沙尘天气,但还是要坚持锻炼
    为了欧冠,堕落两天
    NRF24L01测试板子完成了
    昨天参加ti的研讨会了
    自我安慰一下
    功率W与dBm的对照表及关系
    短时间提高英语口语方法
    看了一个星期的欧洲杯,熬阿
    最近比较忙,项目较累
    后台获取js赋给服务器控件的值
  • 原文地址:https://www.cnblogs.com/xcw0754/p/4621527.html
Copyright © 2020-2023  润新知