zoukankan      html  css  js  c++  java
  • python实现栈和队列

    class Node:#节点类
    next = None#节点指针指向下一个
    def __init__(self,data):
    self.data=data
    ------------------------------------------
    class Queue:
    first = Node(None)#头节点
    last = Node(None)#尾节点
    def inQueue(self,node):#进队列
    if self.first.data==None:
    self.first = node
    self.last = node
    else:
    self.last.next = node
    self.last = node
    def deQueue(self):#出队列
    node = self.first
    self.first = self.first.next
    return node
    q = Queue()#创建队列对象
    q.inQueue(Node(1))#进队
    q.inQueue(Node(2))#进队
    n = q.deQueue()#出队
    m = q.deQueue()#出队
    print n.data,m.data
    --------------------------------

    class Stack:#栈
    top = Node(None)
    def add(self,node):#进栈
    node.next=self.top
    self.top = node
    def out(self):#出栈
    node =self.top
    while node.data!=None:
    print node.data,
    node= node.next
    s =Stack()
    s.add(Node(1))#进栈
    s.add(Node(2))#进栈
    s.add(Node(3))#进栈
    s.out()#出栈
  • 相关阅读:
    ContextMenuStrip 类
    ToolStripMenuItem
    ubuntu16.04下安装cuda8.0
    插入排序
    Python *args **kw
    python面向对象编程
    0/1背包问题(回溯法)
    Python decorator装饰器
    Python 函数式编程
    分治策略(求解递归式的方法)
  • 原文地址:https://www.cnblogs.com/nknk/p/8412520.html
Copyright © 2011-2022 走看看