赞
踩
队列:允许插入的一端为队头front,允许删除的一端为队尾rear,先进先出的原则。
顺序队列:sequential queue
队尾指针指示队尾元素在一维数组中的当前位置,队头指针指示队头元素在一维数组中当前位置的前一个位置,空队列self.front= self.rear = 0
链式队列:linked queue 不需要指定长度,一般不会产生队满
一个同时带有头指针和尾指针的单链表,头指针指向头结点,尾指针指向尾结点
class SequenceSqueue(object): def __init__(self,maxsize): self.maxsize = maxsize self.data = [None for _ in range(maxsize)] #self.data = list(None for x in range(maxsize)) self.front = 0 self.rear = 0 def isEmpty(self): if self.front == self.rear: print True else: print False def getLength(self): print self.rear - self.front def En_Queue(self,x): if self.rear < self.maxsize: self.rear = self.rear + 1 self.data[self.rear] = x else: print 'queue is full!' def init_queue(self): element = input('please input a element,# for end:') while element != '
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。