#键盘接受五个数,排序后输出
# 算法:
# 1、从输入流获取5个整数,并存于列表中
# 2、调用列表的sort方法对列表进行排序
# 3、打印排序后的结果,打印排序之前的
# 注释:
# append() 方法用于在列表末尾添加新的对象:list.append(obj)
i=0
list=[]
while (i<5) :
input=raw_input("number of %dth:" % i)
i=i+1
list.append(int(input))
print list
list.sort()
print list
#encoding=utf-8
#2、使用尽可能多的方法实现list去重
#方法一
#encoding=utf-8
#len():返回字符串的长度
#remove() 函数用于移除列表中某个值的第一个匹配项
a=[1,2,3,4,5,5,3,1]
i=0
while i<len(a)
if a.count(a[i]) > 1
a.remove(a[i])
continue
i+=1
print a
#方法二
#fromkeys()方法从序列键和值设置为value来创建一个新的字典
#encoding=utf-8
def AList(ListOne) :
LaDict=dict.fromkeys(ListOne,0)
LaStr=LaDict.keys()
return LaStr
if __name__ == "__main__" :
ListOne=[1,2,3,4,5,5,3,1]
NewList=AList(ListOne)
print ListOne
print NewList
#方法三
#list() 方法用于将元组转换为列表。
#set():
def AList(ListOne) :
LaList=list(set(ListOne))
return LaList
if __name__ == "__main__" :
ListOne=[1,2,3,4,5,5,3,1]
NewList=AList(ListOne)
print ListOne
print NewList
#创建一个二叉树 ,并广度遍历
import Queue
class Node(object):
def __init__(self,value=None,lchild=None,rchild=None):
self.value = value
self.lchild = lchild
self.rchild = rchild
class Tree(object):
#创建树,用层次遍历的方式创建树,单个节点输入
def CreatTree(self,node):
myQueue = Queue.Queue()
if node != None:
myQueue.put(node)
while myQueue.empty() is not True:
nodes = myQueue.get()
print nodes.value
LVal = raw_input("输入左孩子节点值:")
if LVal == "none":
nodes.lchild = None
else:
nodes.lchild = Node(LVal)
myQueue.put(nodes.lchild)
RVal = raw_input("输入右孩子节点值:")
if RVal == "none":
nodes.rchild = None
else:
nodes.rchild = Node(RVal)
myQueue.put(nodes.rchild)
return "creat tree success"
#BFS-层次遍历
def BFSTraver(self,node):
myQueue = Queue.Queue()
ListVal = []
if node != None:
myQueue.put(node)
while myQueue.empty() is not True:
node1 = myQueue.get()
ListVal.append(node1.value)
if node1.lchild != None:
myQueue.put(node1.lchild)
if node1.rchild != None:
myQueue.put(node1.rchild)
return ListVal
if __name__ == "__main__":
nodes = Node(1)
t1 = Tree()
print "************ 创建树 Start ********"
print t1.CreatTree(nodes)
print "************ 创建树 End **********"
print "************ BFS Start ***********"
print t1.BFSTraver(nodes)
print "************ BFS End *************"