当前位置:   article > 正文

Python数算:10个queue的排序法_python 队列 10个

python 队列 10个
  1. class Queue:
  2. def __init__(self):
  3. self.items = []
  4. def isEmpty(self):
  5. return self.items == []
  6. def enqueue(self, item):
  7. self.items.insert(0, item)
  8. def dequeue(self):
  9. return self.items.pop()
  10. def size(self):
  11. return len(self.items)
  12. #以下是代码部分:
  13. def back_to_main(queue):#将十个Queue里的数据返回main
  14. for i in range(10):
  15. while not queue[i].isEmpty():
  16. queue[10].enqueue(queue[i].dequeue())
  17. queue=[Queue(),Queue(),Queue(),Queue(),Queue(),Queue(),Queue(),Queue(),Queue(),Queue(),Queue()]
  18. list=str(input()).split()
  19. Max=int(list[0])
  20. for x in list:#将数输入queue[10]并找到最大数Max
  21. x=int(x)
  22. if Max<x:
  23. Max=x
  24. queue[10].enqueue(x)
  25. l=len(str(Max))#l为最大数的位数
  26. for i in range(l):#进行l次的排序
  27. while not queue[10].isEmpty():
  28. x=queue[10].dequeue()
  29. queue[(x//10**i)%10].enqueue(x)
  30. back_to_main(queue)
  31. #输出已排好的queue[10]以检查
  32. s=""
  33. while queue[10].size()>1:
  34. s=s+str(queue[10].dequeue())+" "
  35. s=s+str(queue[10].dequeue())
  36. print(s)
'
运行

 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/空白诗007/article/detail/803008
推荐阅读
相关标签
  

闽ICP备14008679号