python列表去重
2013-12-13 00:53
218 查看
有序列表去重:
有序列表中相等的元素必然紧邻,输入[1,1,1,2,2,3,4,4,5],期望的输出应当为[1,2,3,4,5]。
无序列表去重:
要求去重后保持原顺序,例如输入[1,2,3,3,4,2,3,4,5,6,1],输出为[1, 2, 3, 4, 5, 6]
有序列表中相等的元素必然紧邻,输入[1,1,1,2,2,3,4,4,5],期望的输出应当为[1,2,3,4,5]。
#有序列表去重(低效版o(n^2)) def unique(lis): i = 0 while i < len(lis) - 1: if lis[i] == lis[i + 1]: lis.pop(i + 1) else: i += 1 return lis #有序列表去重(高效版,o(n)) def unique2(lis): i = 0 j = 1 while j < len(lis): if lis[i] != lis[j]: i += 1 lis[i] = lis[j]` j += 1 del lis[i+1 : ] return lis
无序列表去重:
要求去重后保持原顺序,例如输入[1,2,3,3,4,2,3,4,5,6,1],输出为[1, 2, 3, 4, 5, 6]
#无序列表去重 def unique3(lis): i = 1 while i < len(lis): if lis[i] in lis[0 : i]: lis.pop(i) else: i += 1 return lis
相关文章推荐
- Python列表的特殊用法
- python------列表的使用
- Python操作列表之List.insert()方法的使用
- [python]学习笔记4-关于列表去重练习
- python数据结构之列表、元组和字典用法
- python 映射列表 学习
- Python 列表(List)操作方法详解
- 使用Python找出本机支持的socket列表
- python学习-1-列表,元组,字典,集合,文件操作
- Python基础教程——2列表和元组
- Python之列表,字符串,元组,字典,斐波那契数列
- Python两种列表翻转方法的效率比较
- 菜鸟wz的Python周记(4) 列表推倒式制作九九乘法表
- python列表、元组等序列的入门知识
- Python入门 之 列表操作
- python基础列表
- 在Python中处理列表之reverse()方法的使用教程
- Python 列表解析
- Python获取两个日期之间的列表
- python3----基础函数的参数是可变参数,将传进来的参数转成列表