IntSet() DEMO
来源:互联网 发布:单片机工作 编辑:程序博客网 时间:2024/06/07 12:22
#quote from MIT 'introduction to computation and programming using python, Revised'class IntSet(object): """An IntSet is a set of integers""" #Information about the implementation (not the abstraction) #The value of the set is represented by a list of ints, self.vals #Each int in the set occurs in self.vals exactly once. def __init__(self): """Create an empty set of integers""" self.vals = [] def insert(self, e): """Assumes e is an integer and inserts e into self""" if not e in self.vals: self.vals.append(e) def member(self, e): """Assumes e is an integer Returns True if e is in self, and False otherwise""" return e in self.vals def remove(self, e): """Assumes e is an integer and removes e from self Raises ValueError if e is not in self""" try: self.vals.remove(e) except: raise ValueError(str(e) + ' not found') def getMembers(self): """Returns a list containing the elements of self. Nothing can be assumed about the order of the elements""" return self.vals[:] def __str__(self): """Returns a string representation of self""" self.vals.sort() result = '' for e in self.vals: result += str(e) + ',' return '{' + result[:-1] + '}' #-1 omits trailing comma
%run "C:\Users\Administrator\test.py"
s = IntSet()
s.insert(100)
s.insert(200)
s.member(100)
Out[27]: True
s.member(10000)
Out[28]: False
print s
{100,200}
s.insert(9999)
s.remove(200)
print s
{100,9999}
s.getMembers()
Out[33]: [100, 9999]
sum = 0
for e in s.getMembers():
sum += e
print sum
10099
0 0
- IntSet() DEMO
- Redis intset
- redis之intset
- redis数据结构之 intset
- intSet代码段
- redis之intset
- redis --内部结构--intset
- redis 源码 -- intset
- 底层实现-intset 整数集合
- Redis-数据结构-整数集合-intset
- Redis源码分析(intset)
- 【redis源码分析】数字集合--intset
- Redis源码分析-intset.h/c
- Redis源码分析-内存数据结构intset
- redis源码分析-intset(整型集合)
- Redis源码剖析--整数集合Intset
- redis内部数据结构总结(7)intset
- Intset实现:真正理解并掌握链表
- pkg: cached package *:size mismatch, cannot continue
- Qt中文支持和文件读写
- 【翻译自mos文章】使用dbua升级时,需要手工设置CLUSTER_DATABASE参数么?
- scala 单元测试
- Linux 进程关系
- IntSet() DEMO
- Xcode中常用的快捷键
- android值传递
- @property的参数说明
- 【翻译自mos文章】当点击完 finish按钮后,dbca 或者dbua hang住
- java基础——static 关键字小节
- 创业中,感受书本和现实的距离——北漂18年(16)
- 字典转模型&加载xib&加载plist
- 【剑指Offer学习】【面试题52:构建乘积数组】