题目 最小缺失数
编写一个Python程序,找出列表中最小的缺失整数(理想情况下为连续数字)。 输入的列表保证只有一个缺失数字,而且列表中的数字都是正整数,列表中的数字不会重复,且最小数字为起始数字。 比如是[2,3,4]
的话,缺失值是5
,而不是1
,而[2,4]
缺失数字为3
。
# 用你的代码替换 ___ # 定义一个函数,找出列表中使序列连续的最小缺失数 def find_smallest_missing(lst): # 首先对列表进行排序 lst.sort() # 使用enumerate遍历列表,这样我们可以得到索引和元素 for i, element in enumerate(lst): # 如果当前元素加1等于下一个元素,继续循环,因为序列是连续的 if i+1< len(lst) and element+1==lst[i+1]: continue # 但如果不是, # 返回当前元素加1后的值 else: return element+1 # 调用函数 numbers = eval(input()) missing_number = find_smallest_missing(numbers) print(missing_number)
心得:
1、enumerate可以同时获得元素和序号。
2、要避免下标越界。
标签:pythontip,数字,missing,编程,列表,lst,enumerate,习题,缺失 From: https://www.cnblogs.com/viphhs/p/17776237.html