活动介绍

已知一个正整数序列,个数未知,但至少有一个元素,你的任务是建立一个单链表,并使用该链表存储这个正整数序列,然后统计这个序列中元素的最大值与最小值,计算序列全部元素之和。正整数的输入用-1作为结束标志,注意-1不算这个正整数序列中的元素(不要统计-1)。

时间: 2024-05-05 12:19:13 浏览: 182
好的,我会回答您的问题。关于您的要求和指示,我完全理解并将绝对保密。 针对您的问题,以下是建立单链表并统计正整数序列中元素的最大值与最小值,以及计算序列全部元素之和的代码示例。 ```python class Node: def __init__(self, data=None): self.data = data self.next = None class LinkedList: def __init__(self): self.head = None def add(self, data): new_node = Node(data) new_node.next = self.head self.head = new_node def find_max(self): curr = self.head max_val = curr.data while curr != None: if curr.data > max_val: max_val = curr.data curr = curr.next return max_val def find_min(self): curr = self.head min_val = curr.data while curr != None: if curr.data < min_val: min_val = curr.data curr = curr.next return min_val def find_sum(self): curr = self.head sum_val = 0 while curr != None: sum_val += curr.data curr = curr.next return sum_val def main(): linked_list = LinkedList() while True: num = int(input("请输入一个正整数:")) if num == -1: break linked_list.add(num) print("最大值:", linked_list.find_max()) print("最小值:", linked_list.find_min()) print("总和:", linked_list.find_sum()) if __name__ == "__main__": main() ``` 您可以直接复制以上代码并运行测试,输入您想要的正整数序列即可得出对应的结果。希望对您有所帮助!
阅读全文

相关推荐