Python_stack

EvanLee
Feb 27, 2022

--

Stack是資料結溝的一環節;是個''後進先出''的資料型態。

形同於在只有單一出口且裝滿球的桶子內,拿球時,最後裝入的球即是第一個被取出的。

如圖:

這[東西]是在list清單中“pop”的環節。是把list清單中最後一個取出。

push則是將另一個 “物件"放入。

程式碼截圖如下:

執行結果如下:

程式碼如下:

class Stack():
def __init__(self):
self.my_stack = []
def my_push(self, data):
self.my_stack.append(data)
def my_pop(self):
return self.my_stack.pop()
def size(self):
return len(self.my_stack)
def isEmpty(self):
return self.my_stack == []
stack = Stack()
fruits = ['Grape', 'Mango', 'Apple']
for fruit in fruits:
stack.my_push(fruit)
print('將 %s 水果堆入堆疊' % fruit)
print('堆疊有 %d 種水果' % stack.size())
while not stack.isEmpty():
print(stack.my_pop())

這裡class堆疊裡有 5 種函式:

__init__ 一定要雙底線,這是他們的規則。

每一個class一定要有initial函式。

push式放入數字的程式碼:使用list的append函式來實現push在list的最後。

pop則是將list的最末端其取出。

len是length的縮寫。

size會回應list長度。

isEmpty是檢查list是否為空的。

就把水果的物品放入堆疊,在pop出來。展示了''後進先出''。

--

--

EvanLee
EvanLee

No responses yet