stack 堆疊: 後進先出queue佇列 : 先進先出 fifo(first in first out)
putget
#queue佇列 : 先進先出 fifo(first in first out)
#put
#get
#class queue:
#def __init__(self):
#self.l =
#def put(self,item):##
def get(self):
#return self.l.pop(0)
#q = queue()
#q.put(1)
#q.put(2)
#q.put(3)
#print(q.get())
#print(q.get())
#print(q.get())
#假設你希望乙個類的多個物件之間 的某個屬性 是各自的屬性,而不是共同的屬性
#這個時候我們要把變數儲存在物件的命名空間中,不能建立靜態變數,
#建立靜態變數是所有的物件共同使用乙個變數
#class stack:
#def __init__(self):
#self.l =
#def put(self,item):##
def get(self):
#return self.l.pop()##
s1 = stack()
#s2 = stack()
#s1.put(1)
#s2.put('a')
#s2.put('b')
#s2.put('c')
#s1.put(2)
#s1.put(3)
#print(s2.get())
#print(s1.get())
#print(s2.get())
#print(s2.get())
#print(s1.get())
#s1.put(4)
#print(s1.get())
#print(s1.get())
#方法一
#class foo:
#def __init__(self):
#self.l = ##
def put(self, item):##
##class queue(foo):
#def get(self):
#return self.l.pop(0)##
#class stack(foo):
#def get(self):
#return self.l.pop()
#方法二:
#class foo:
#def __init__(self):
#self.l = ##
def put(self,item):##
#def get(self):
#return self.l.pop() if self.index else self.l.pop(0)##
class queue(foo):
#def __init__(self):
#self.index = 0
#foo.__init__(self)##
class stack(foo):
#def __init__(self):
#self.index = 1
#foo.__init__(self)
#方法三
class
foo:
def__init__
(self):
self.l =
defput(self, item):
defget(self):
return
self.l.pop()
class
queue(foo):
defget(self):
return
self.l.pop(0)
class stack(foo): pass
class
mypickle:
pass
import
pickle
class
mypickle:
def__init__
(self, path):
self.file =path
defdump(self, obj):
with open(self.file, 'ab
') as f:
pickle.dump(obj, f)
defload(self):
with open(self.file, 'rb
') as f:
while
true:
try:
yield
pickle.load(f)
except
eoferror:
break
defrun():
pass
#def load(self):
#l =
#with open(self.file,'rb') as f:
#while true:
#try:##
except eoferror:
#break
#return l
#pic = mypickle('pickle_file')
#s1 = stack()
#s1.put('aaa')
#s1.put(123)
#s1.put(456)
#pic.dump(s1)
#s2 = stack()
#s2.put('aaa')
#s2.put(123)
#s2.put(456)
#pic.dump(s2)
#for i in pic.load():
#print(i.l)
python實現堆疊 佇列
一 利用python列表實現堆疊和佇列 堆疊 堆疊是乙個後進先出的資料結構,其工作方式就像生活中常見到的直梯,先進去的人肯定是最後出。後進先出 class stack def init self,size self.size size self.stack self.top 1 defpush se...
用堆疊模擬佇列,和用佇列模擬堆疊
最近在看 演算法導論 第十章裡面有一題是用了 兩個堆疊模擬乙個佇列,我設計的演算法如下 堆疊a和b,a用作入隊,b出隊 1 判隊滿 如果a滿且b不為空,則隊滿 2 判隊空 如果a和b都為空,則隊空 3 入隊 首先判隊滿。若隊不滿 1 棧a若不滿,則直接壓入棧a 2 若a滿,則將a中的所有元素彈出到棧...
python實現堆疊與佇列的方法
1 python實現堆疊,可先將stack類寫入檔案stack.py,在其它程式檔案中使用frwww.cppcns.comom stack import stack,然後就可以使用堆疊了。stack.py的程式 複製 如下 class stack def init self,size self.si...