Python 面试练习题

    xiaoxiao2021-03-25  124

    #键盘接受五个数,排序后输出 # 算法: # 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 *************"
    转载请注明原文地址: https://ju.6miu.com/read-14619.html

    最新回复(0)