本文主要是介绍[牛客网刷题 Day1] JZ24 反转链表,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
题目描述:
心路历程:
思路不难,但是写出来好难啊,各种边界条件都要注意
输入为空链表时,不知道怎么做。。。 原来是 head == None
class Solution:def ReverseList(self , head: ListNode) -> ListNode:# write code hereif head == None:return headlast = ListNode(head.val)new = lastwhile head and head.next:head = head.nextnew = ListNode(head.val)new.next = lastlast = newif head.next == None: breakreturn new
看了一下别人的答案,比我的短小精悍很多,都没有像我一样使用ListNode构建链表,而是先建立None
,再使用.next
构建哦:
# class ListNode:
# def __init__(self, x):
# self.val = x
# self.next = None
class Solution:# 返回ListNodedef ReverseList(self, pHead):# write code herepre = Nonehead = pHeadwhile head:temp = head.nexthead.next = pre pre = head head = temp return pre
这篇关于[牛客网刷题 Day1] JZ24 反转链表的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!