JS中的演算法與資料結構 棧

2021-09-27 07:22:39 字數 995 閱讀 4291

棧,又叫堆疊,是和列表類似的一種資料結構,但是卻更高效,因為棧內的元素只能通過列表的一端訪問,稱為棧頂,資料只能在棧頂新增或刪除,遵循 先入後出(lifo,last-in-first-out) 的原則,普遍運用於計算機的方方面面。

對棧的操作主要有兩種,一是將乙個元素壓入棧,push方法,另乙個就是將棧頂元素出棧,pop方法。

除此之外,棧還有其他的一些屬性和方法:檢視當前棧頂的元素值,我們使用 peek 方法,它僅僅返回棧頂元素值,並不刪除它;clear 方法用於清空當前棧內的所有元素;top屬性記錄當前棧頂位置;length方法返回當前棧內元素總數等;接著我們定義棧的資料型別,並利用js中的陣列去實現它。

function

stack()

function

push

(element)

function

pop(

)function

peek()

function

length()

function

clear()

function

baseconverter

(num, base)

let res ='';

while

(s.length()

>0)

return res;

}

function

ispalindrome

(str)

let reversestr ='';

while

(s.length()

>0)

if(str === reversestr)

return

true

;else

return

false

;}

參考:

js中的演算法與資料結構——棧(stack)

js資料結構與演算法之棧結構

一 棧 stack 指 一種受限的線性表,後進先出 lifo 其限制是僅允許在 表的一端 進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。lifo last in first out 表示就是後進入的元素,第乙個彈出棧空間.類似於自動餐托盤,最後放上的托盤,往往先拿出去使用。向乙個棧...

JS資料結構和演算法 棧

棧是一種後進先出的資料結構 其限制是僅允許在一端進行插入和刪除。這一端被稱為棧頂,另一端稱為棧底 lfo last in first out 後進入的元素第乙個彈出棧空間 向 個棧插入新元素又稱作進棧 入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素 從 個棧刪除元素又稱作岀棧,它是...

資料結構與演算法《棧》

概念 棧 stack 又名堆疊,它是一種運算受限的線性表。其限制是僅允許在表的一端進行插入和刪除運算。這一端被稱為棧頂,相對地,把另一端稱為棧底。向乙個棧插入新元素又稱作進棧 入棧或壓棧,它是把新元素放到棧頂元素的上面,使之成為新的棧頂元素 從乙個棧刪除元素又稱作出棧或退棧,它是把棧頂元素刪除掉,使...