首頁 > web前端 > js教程 > 資料結構與演算法第 0 天

資料結構與演算法第 0 天

Patricia Arquette
發布: 2024-10-06 06:20:03
原創
1143 人瀏覽過

Data Structures & Algorithm Day 0

第 0 天

基本資料結構

我們將看到 javascript 中的所有程式碼範例,但這些概念與語言無關

  1. 數組

陣列是元素的集合,通常具有相同類型,儲存在連續的記憶體位置。

陣列作為書籍列表:
想像一下,您有一個書架,可容納特定數量的書籍。書架上的每個插槽就像陣列中的一個索引,而每本書就像儲存在該索引處的元素。

主要特徵:

索引:每個元素都可以透過其索引進行存取(從 0 開始或從 1 開始,取決於語言)。


const fruit  = ['Banana','Apple','Grape', 'Pineapple']

console.log(fruit[0]) //  Banana is accessed 0 index
console.log(fruit[3]) // Pineapple is accessed 3 index


登入後複製

固定大小:一旦聲明,陣列的大小就無法改變(靜態陣列)。
在具有靜態數組的語言中,當聲明數組時,必須在建立時指定其大小。這意味著,如果你聲明一個大小為5的數組,那麼它只能儲存5個元素,而且以後不能更改大小。一旦陣列滿了,你就不能加入更多元素,也不能縮小它。

但是,JavaScript 陣列本質上是動態的,因此在大多數情況下沒有這種固定大小的限制。但要從概念上理解固定大小數組,請想像 JavaScript 數組是否無法成長或收縮。


let fixedArray = new Array(3); // Array with a fixed size of 3
fixedArray[0] = 'apple';
fixedArray[1] = 'banana';
fixedArray[2] = 'cherry';

// Now if you try to add another item:
fixedArray[3] = 'date'; // This would throw an error or overwrite an existing element (hypothetically)


console.log(fixedArray) // [ 'apple', 'banana', 'cherry', 'date' ]


登入後複製

隨機存取:您可以使用其索引直接存取任何元素。


const fruit  = ['Banana','Apple','Grape', 'Pineapple']

console.log(fruit[0]) // index 0 is the Banana 
console.log(fruit[3]) // index 3 is the Pineapple 


登入後複製

優點:

  • 透過索引快速存取元素(O(1) 時間複雜度)。
  • 易於實作。

缺點:

  • 插入和刪除的成本很高(O(n) 時間複雜度),因為可能需要移動元素。
  • 固定大小(在某些語言中),使其靈活性較差。

以上是資料結構與演算法第 0 天的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:dev.to
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板