前端面試總結 資料結構與演算法二

2021-09-16 12:43:49 字數 964 閱讀 7881

棧是一種遵從後進先出(lifo)原則的有序集合。新新增的或者待刪除的元素都儲存在棧的末尾。稱作棧頂,另一端就叫棧底。在棧裡,新元素都靠近棧頂,舊元素都接近棧底。

function stack()
接下來,是棧的方法:

push(element) -- 新增新元素到棧頂。

pop() -- 移除棧頂的元素,同時返回被移除的元素。

peek() -- 返回棧頂的元素,但不對棧做任何操作。

isempty() -- 如果棧裡沒有任何元素就返回true,否則返回false。

clear() -- 移除棧裡的所有元素。

size() -- 返回棧裡的元素個數。

function stack()

this.pop = function()

this.peek = function()

this.isempty = function()

this.size = function()

this.clear = function()

this.print = function()

}

如何將十進位制與其他進製進行轉換,可以用stack來解決這個問題。

比如要把十進位制轉化成二進位制,可以將十進位制數字和2相除,直到結果是0為止。

function baseconverter(decnumber,base)

while(!remstack.isempty())

return basestring;

}console.log(baseconverter(100345,2));

console.log(baseconverter(100345,8));

console.log(baseconverter(100345,16));

推薦乙個找vue,angular元件的輪子工廠

前端面試總結 資料結構與演算法一

陣列是比較簡單的內容,這裡介紹陣列常用的操作。陣列的建立和初始化非常簡單,你可以通過var arr new array 或者var arr new array a b c 來建立乙個陣列。當然也可以簡單的var arr 這也是最通常的用法。需要在陣列末端追加元素,我們可以簡單的使用number nu...

前端面試總結 資料結構與演算法四

前端的面試中,鍊錶還是經常會被問到。所以熟悉鍊錶的結果以及鍊錶操作的方法還是很重要的。說道儲存多個元素,陣列可能是最常用的資料結構。這種資料結構非常方便,提供了便利店語法來訪問它的元素。但是陣列的缺點就是對元素進行插入或者刪除操作的成本很高,需要移動元素。鍊錶儲存有序的元素集合,但不同於陣列,鍊錶中...

前端面試 資料結構

資料結構面試考點 棧是一種遵從後進先出 lifo,後進先出 原則的有序集合。新新增的或者待刪除的元素都儲存在棧的末尾。稱作棧頂,另一端就叫棧底。在棧裡,新元素都靠近棧頂,舊元素都接近棧底。棧的建立 function stack 接下來,是棧的方法 push element 新增新元素到棧頂。pop ...