使用python中的list列表實現棧和佇列

2022-09-07 07:42:11 字數 1293 閱讀 5681

直接上**:

1.棧:

class

stack

(object):

def__init__

(self)

: self.l =

defempty

(self)

:# 判斷棧是否為空

return

len(self.l)==0

defpeek

(self)

:# 檢視棧頂的物件,但不移除

ifnot self.empty():

return self.l[-1

]return

none

defpop

(self)

:# 移除棧頂物件,並返回該物件的值

ifnot self.empty():

return self.l.pop(

)return

none

defpush

(self, obj)

:# 把物件壓入棧頂

defsearch

(self, obj)

:# 返回物件在棧中的位置,以1為基數

ifnot self.empty():

return self.l.index(obj)+1

return

-1

2.佇列:

class

queue

(object):

def__init__

(self)

: self.l =

defempty

(self)

:# 判斷佇列是否為空

return

len(self.l)==0

defadd

(self, obj)

:# 將指定元素加入佇列的尾部

defpeek

(self)

:# 檢視隊首的物件,但不移除

ifnot self.empty():

return self.l[0]

return

none

defpoll

(self)

:# 移除隊首物件,並返回該物件的值

ifnot self.empty():

return self.l.pop(0)

return

none

還有一種deque的方法,有興趣的可以看看。

這就是list列表實現棧和佇列的全部,希望可以幫助到大家!

python中列表list的基本使用

list 1,2,3 list 1,2,3 2 list.extend l 將乙個給定列表中的所有元素都新增到另乙個列表中 list extend 5,6,7 list 1,2,3,4,5,6,7 3 list.insert i,x list.insert 0,9 list 9,1,2,3,4,5,...

Python 中 list的使用案例練習

coding utf8 8 list的使用 1.乙個產品,需要列出產品的使用者,這個時候就可以使用乙個list表示 user liangdianshui weoater 兩點水 print n1.產品使用者 print user 2.如果需要統計有多少個使用者,這時候len 函式可以獲得list裡元...

freeMarker中list的兩列展示

前台介面中我使用freemarker的機會有很多,自然也就會接觸下標籤,我想大家應該都不陌生。list attrlist as attr 類似的用法很多,但是偶爾會用到兩列的展示效果我們改怎麼辦呢?我們可以根據模型中的int型別的某一列,一般是自動增長的id標識列。如果你設計的表中 沒有這樣型別的列...