[leetcode] Reverse Linked List 分类: leetcode 算法 2015-07-09 18:44 2人阅读 评论(0) 收藏

反转链表:比较简单的问题,可以遍历也可以递归。

# Definition for singly-linked list.
class ListNode:
    def __init__(self, x):
        self.val = x
        self.next = None
class Solution:
    # @param {ListNode} head
    # @return {ListNode}
    def reverseList(self, head):
        if head!=None:
            list1=head
            list2=None
            while list1:
                list1,list2=self.move1(list1,list2)
            return list2
    def move(self,list1,list2):
        #将list1的首位节点放置到list2的首位
        if list1!=None:
            head=list1
            list1=list1.next
            head.next=list2
            list2=head
            return list1,list2

疑问:python 中参数为传引用,相当于起一个别名/指针?

版权声明:本文为博主原创文章,未经博主允许不得转载。

posted @ 2015-07-09 18:44  clq.lib  阅读(155)  评论(0编辑  收藏  举报