(2018-04-21.Python从Zero到One)五、队列__5.1.1队列的实现

上一篇文章为:→5.1.0栈

队列的实现

同栈一样,队列也可以用顺序表或者链表实现。

操作

  • Queue() 创建一个空的队列
  • enqueue(item) 往队列中添加一个item元素
  • dequeue() 从队列头部删除一个元素
  • is_empty() 判断一个队列是否为空
  • size() 返回队列的大小
class Queue(object):
    """队列"""
    def __init__(self):
        self.items = []

    def is_empty(self):
        return self.items == []

    def enqueue(self, item):
        """进队列"""
        self.items.insert(0,item)

    def dequeue(self):
        """出队列"""
        return self.items.pop()

    def size(self):
        """返回大小"""
        return len(self.items)

if __name__ == "__main__":
    q = Queue()
    q.enqueue("hello")
    q.enqueue("world")
    q.enqueue("itcast")
    print q.size()
    print q.dequeue()
    print q.dequeue()
    print q.dequeue()

下一篇文章为:→5.1.2双端队列
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 上一篇文章为:→5.1.1队列的实现 双端队列 双端队列(deque,全名double-ended queue),...
    lyh165阅读 1,405评论 1 0
  • 如需转载, 请咨询作者, 并且注明出处.有任何问题, 可以关注我的微博: coderwhy, 或者添加我的微信: ...
    coderwhy阅读 13,327评论 9 44
  • 题目类型 a.C++与C差异(1-18) 1.C和C++中struct有什么区别? C没有Protection行为...
    阿面a阅读 12,320评论 0 10
  • 今天是开学的倒数第二天,给孩子们写下开学的一些注意事项,同时自己也在为开学做着积极的准备!新的学期,新的气...
    义马203张明阅读 1,733评论 0 1
  • 太阳是一个美丽无比又非常羞涩的大姑娘,只要他露出脸来,人们都仰视她,一轮金盘才捧出,千家万户仰头望。弄得太阳姑娘很...
    sunny兰苑阅读 3,287评论 0 0

友情链接更多精彩内容