資料結構與演算法第三節 陣列的使用

2021-09-29 10:54:39 字數 983 閱讀 7545

陣列(array): 是一種線性表資料結構,它用一組連續的記憶體空間,來儲存一組具有相同型別的資料。

(陣列的特性: 「線性表」, 「連續的」, 「相同型別」)。

線性表:就是資料排成像一條線一樣的結構。 每個線性表的資料最多只有前和後兩個方向。

ps: 陣列、鍊錶、佇列都是線性表結構。其結構和簡單特性如下圖所示:

ps: 除了線性表,還有非線性表: 二叉樹、堆、圖等,如下圖所示:

非線性表:在非線性表中,資料之間不是簡單的前後關係。

陣列支援隨機訪問, 根據下標隨機訪問的時間複雜度為o(1);

鍊錶適合插入、刪除,時間複雜度為o(1);

插入: 可以不將要插入位置的資料放到陣列的最後,再將要插入**的資料放到該位置;

記憶體位址 小端模式存放內容 大端模式存放內容

0x4000(低位址) 0x78 0x12

0x4001 0x56 0x34

0x4002 0x34 0x56

0x4003(高位址) 0x12 0x78

對於業務開發,直接使用容器就足夠了,省時省力。畢竟損耗一丟丟效能,完全不會影響到系統整體的效能。

如果你是做一些底層的開發,比如開發網路框架,效能的優化需要做到極致,這個時候陣列就會優於容器,成為首選

第三節 資料與編碼

第三節 資料與編碼 一 進製 一 基本概念 數制即表示數值的方法,有非進製數和進製數兩種。在計算機數制中,需要掌握數碼 基數和位權 的概念。數碼 數制中表示基本數值大小的不同數字符號。在一種數制中,只能使用一組固定的符號來表示 數的大小。例如,十進位制有 10 個數碼,分別為 0,1,2,3,4,5...

第三節 資料降維

過濾方差,進行降維 threshold指定要過濾的方差,小於等於即過濾該特徵 var variancethreshold threshold 0.0 data var.fit transform 0,2,0,3 0,1,4,3 0,1,1,3 print data if name main var ...

資料結構和演算法學習第三節 棧

陣列實現棧思路分析 先不考慮執行緒安全問題 1 定義乙個top表示棧頂,初始化為 1。2 入棧的操作,當有資料入棧時,top stack top data 3 出棧的操作 臨時變數 value stack top top return value package com.example.data.s...