Python中严格增加的链表
假设我们有一个单链表的头,我们必须检查节点的值是否按严格的升序排序。
因此,如果输入类似于[2,61,105,157],则输出将为True。
为了解决这个问题,我们将遵循以下步骤-
定义一个功能
solve()
。这将需要如果head.next为null,则
返回True
如果head.val> = head.next.val,则
返回False
返回solve(head.next)
让我们看下面的实现以更好地理解-
示例
class ListNode:def __init__(self, data, next = None):
self.val = data
self.next = next
def make_list(elements):
head = ListNode(elements[0])
for element in elements[1:]:
ptr = head
while ptr.next:
ptr = ptr.next
ptr.next = ListNode(element)
return head
class Solution:
def solve(self, head):
if head.next == None:
return True
if head.val >= head.next.val:
return False
return self.solve(head.next)
ob = Solution()head = make_list([2,61,105,157])
print(ob.solve(head))
输入项
[2,61,105,157]
输出结果
True
以上是 Python中严格增加的链表 的全部内容, 来源链接: utcz.com/z/355635.html