極簡教程 資料結構與演算法(二)

2021-10-05 15:02:24 字數 751 閱讀 4427

2020-4-29

陣列篇

我盡量用 最少的文字,最少的**。來講明白資料結構與演算法。
定址演算法

a[i] = 陣列開始的位置 + i * 固定大小
動作

複雜度array 增

o(n)

array 刪

o(n)

array 改

o(1)

array 查:根據下標

o(1)

array 查:迴圈查

o(logn)

如果不需要排序,那麼不用每次都對插入位置後的元素做位移。可以嘗試替換法

不用每次刪除都 給元素移位,可以先標記被刪除的元素。等刪除的元素積累一段之後一併刪除。

如有不足,歡迎補充。

本文由部落格**一文多發等運營工具平台 openwrite 發布

極簡教程 資料結構與演算法(一)

2020 4 28 時間複雜度與空間複雜度 我盡量用 最少的文字,最少的 來講明白資料結構與演算法。const findcat n console.log 有 只貓 findcat 1 石興龍 有 1 只貓 findcat 10 石興龍 有 10 只貓 findcat n 石興龍 有 n 只貓 先來...

極客幫資料結構與演算法總結

1 工具 1 時間和空間複雜度 2 常見時間複雜度表示 由低到高 4 思考題 二叉樹遍歷 前序 中序 後序 時間複雜度是?o n 圖的遍歷 時間複雜度?o n 搜尋演算法 深度優先 dfs 廣度優先 bfs 時間複雜度?o n 二分查詢 時間複雜度?log n 排好序的二維矩陣中查詢 o n 歸併排...

資料結構與演算法教程彙總

一 演算法 1.二分法 2.遞推演算法 分為順推法 又叫 斐波那契數列 和倒推法 兩種 演算法思想 3.列舉 窮舉 演算法 4.遞迴演算法 5.分治演算法 演算法思想 把大問題分解成n個小問題 6.貪婪演算法 7.試探法演算法 8.模擬演算法 二 資料結構 1.線性結構 資料元素之間是一對一的關係 ...