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

2021-10-02 13:25:05 字數 694 閱讀 6442

1)工具

1)時間和空間複雜度

2)常見時間複雜度表示(由低到高)

4)思考題

二叉樹遍歷 - 前序、中序、後序:時間複雜度是?o(n)

圖的遍歷:時間複雜度?o(n)

搜尋演算法:深度優先(dfs)、廣度優先(bfs)時間複雜度?o(n)

二分查詢:時間複雜度?log(n)

排好序的二維矩陣中查詢:o(n)

歸併排序:o(nlogn)

費波那奇數列演算法

5)疑問

​ 例子1+2+3+……n,方法一:for迴圈y+=i,方法二用公式:y=n*(n+1)/2

​ 上面兩種方法不一定第二種方法好,因為第二種用到了乘法和除法,計算機底層加減法比乘除法更快,或底層時間複雜度更低。

array的時間複雜度

工程運用:lru演算法或redis演算法

queue 佇列

deque 雙端佇列(double ended queue)

priority queue 優先順序佇列

作業未完待續……

python棧和佇列實現

資料結構與演算法總結

本教材共十一章 第一章為資料結構與演算法概述,為本書學習基礎和預備知識。資料的邏輯結構是對資料之間關係的描述,有時就把邏輯結構簡稱為資料結構。邏輯結構形式地定義為 k,r 或 d,s 其中,k是 資料元素的有限集,r是k 上的關係的有限集。邏輯結構有四種基本型別 集合結構 線性結構 樹狀結構和網路結...

資料結構與演算法總結

class solution return void bubblesort vector int arr if flag break void selectsort vector int arr if minpos i swap arr minpos arr i void insertsort ve...

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

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