栈的基本原理及实现
原理
棧是一個有序集合,其中添加和刪除元素都是發生在同一端,通常稱作發生操作的這一端為頂部,對應的端為底部
例子說明:一個桶里面裝很多東西,后放進里面的,先拿出來(也叫后進先出LIFO)
棧的操作:
代碼實現:
代碼實現如下:自己定義一個類,也可以使用封裝好的類from pythonds.basic.stack import Stack
用棧實現的例子(括號匹配)
出現的括號可能是多種例如"{[(",匹配代碼如下:
棧還有很多其它應用,如下:
1、轉換不同進制數之間轉換,例如 給一個十進制數8? 8%2=0? ?8//2=4? 4%2=0? 4//2=2? 2%2=0 2//2=1 1%2=1 1//2=0, 二進制為1000(從后向前取),其它進制轉換同理,代碼如下:
?
總結
- 上一篇: 机器学习--多元线性回归
- 下一篇: 队列的基本原理及实现