leetcode-18

2019-09-03 09:49:55 浏览数 (1)

代码语言:javascript复制
 def removeNthFormEnd(self,head,n):
        node_list=[]
        #连接所有的几点组成链表
        while head:
            node_list.append(head)
            if head.next is None:
                break
            else:
                head=head.next
        #当只有一个节点的时候倒数n个没有意义        
        if len(node_list)==1:
            return None
        #当等于n时表示删除第一个,这个时候不用移动指针
    
        elif len(node_list)==n:
            node_list.pop(0)
            return node_list[0]
        #删除并移动指针
        n=0-n
        node_list[n-1].next=node_list[n].next
        node_list.pop(n)
        return node_list[0]

0 人点赞