Python程序设计——查找列表中连续递增序列的起始位置
来源:互联网 发布:淘宝网进入 编辑:程序博客网 时间:2024/05/19 23:25
问题:假如有这样一个列表[0,2,4,5,8,9,11,14,15,16,17,18,19,20,21,22,23,24],它的元素是整型且递增,从某项开始,是连续递增加1的,一直到列表末尾。比如该序列是从元素14开始连续递增,用Python实现一个程序,找到连续递增的起始位置(前提是不知道连续递增的起始元素是14)。
分析
列表中连续递增的部分序列,前驱和后继的差值等于元素下标的差值,需要设置两个for循环遍历列表,一个用来访问第i个元素另一个用来访问第pos个元素(pos=i+n,i>=0,n>0),通过元素差值与下标差值是否相等来判断是否连续,如果不相等则pos=pos+1并跳出一个for循环,相等则通过变量pos继续遍历至列表结束。程序
l=[0,2,3,5,8,9,11,14,15,16,17,18,19,20,21,22,23,24]pos=0for i in range(pos,len(l)): for j in range(pos+1,len(l)): if l[j]-l[i]!=j-i: pos=i+1 break if j==len(l)-1: breakprint(pos,l[pos])
- 结果
7 14[Finished in 0.1s]
阅读全文
0 0
- Python程序设计——查找列表中连续递增序列的起始位置
- 查找列表中某个值的位置(python)
- 查找列表中某个值的位置(python)
- 递增有序数组中,查找某一个数字的位置
- 矩阵中最长连续递增子序列
- HDU 1231 最大连续子序列——最大连续和+输出其起始点
- 用二分法查找循环递增序列 | Python
- [python项目一]查找输出fasta序列的gap的起始终止等信息
- 行列递增序列的二维数组查找
- 确定UITextView中起始光标的位置
- O(n)时间找出无序数组中最长的连续递增序列
- 一组数中最长连续递增子序列个数
- 求数组中最长连续递增子序列
- 数据结构示例之查找子字符串的起始位置
- python中序列、列表的使用
- Python序列——列表
- Python序列——列表
- (二分查找思想)从有序递增旋转数组45679123 中找到数字6的位置
- EasyUI 实战
- MySQL索引原理及慢查询优化
- 做个标签特效
- 倾斜box-shadow(有角度的box-shadow)
- PAT 1037. 在霍格沃茨找零钱(20)
- Python程序设计——查找列表中连续递增序列的起始位置
- 软件安装——linux使用教程(三)
- sts安装svn插件
- SpringMVC +Oracle分页
- 类的初始化顺序
- python 测试代码使用时间
- 数据分析(四)从K近邻算法入门
- IntelliJIDEA和tomcat在浏览器js乱码问题解决
- Java建造者模式