What---Python演算法
1.大O表示法,時間複雜度
2.一般法則
list.append()
list.insert()
lst.sort()
3.二分法查詢
折半查詢,猜數,50 ,大了;那麼久排除了50-100的數字;猜25.。。等等
前提條件是:有序陣列;資料型別是有範圍的;注意start=mid+1 ,end=mid -a 防止死迴圈;資料量不可過大
4.陣列&連結串列
陣列要求都是連續存放的,陣列就是像追劇想看哪集看哪集;連結串列就是像電視臺只能等著一集一集的播放
插入刪除很少,查詢多,又不會Out of memory ,採用陣列
如果頻繁插入,遍歷,檢索少,就用連結串列
5.順序表
陣列的元素的位置成為索引,索引是從0 開始,地址連續,型別相同
陣列支援直接訪問
6.連結串列
單向連結串列
雙向連結串列
迴圈連結串列
7.棧和佇列
棧:先進 後出(LIFO)
stack
S.push(e)
S.pop
S.top()
S.is_empty()
len(S)
佇列:先進先出(FIFO)
Q.enqueue(e)
Q.dequeue()
Q.first()
Q.is_empty()
len(Q)
迴圈佇列,雙連結串列
D.add_first(e)
D.add_last(e)
D.delete_first()
D.delete_last()
D.first()
D.last()
D.is_empty()
le(D)
8.初級排序演算法
選擇
冒泡(比較相鄰的元素)
插入
希爾:把待排序換分成為若干組,在每一組內進行插入排序(步長)
9.歸併排序
10.快速排序
相關文章
- 【演算法】KMP演算法演算法KMP
- 演算法-回溯演算法演算法
- 【JAVA演算法】圖論演算法 -- Dijkstra演算法Java演算法圖論
- 演算法(2)KMP演算法演算法KMP
- 【演算法】遞迴演算法演算法遞迴
- 演算法題:洗牌演算法演算法
- [演算法之回溯演算法]演算法
- Manacher演算法、KMP演算法演算法KMP
- 【演算法】KMP演算法解析演算法KMP
- 介面限流演算法:漏桶演算法&令牌桶演算法演算法
- 前端演算法:快速排序演算法前端演算法排序
- 演算法初探--遞迴演算法演算法遞迴
- BP演算法和LMBP演算法演算法
- 隨機演算法 概率演算法隨機演算法
- STL::演算法::常見演算法演算法
- 常用演算法 插值演算法演算法
- 前向分步演算法 && AdaBoost演算法 && 提升樹(GBDT)演算法 && XGBoost演算法演算法
- c/c++ 通用的(泛型)演算法 之 只讀演算法,寫演算法,排序演算法C++泛型演算法排序
- 介面限流演算法:漏桶演算法&令牌桶演算法&redis限流演算法Redis
- 什麼是演算法?如何學習演算法?演算法入門演算法
- 演算法金 | 突破最強演算法模型,決策樹演算法!!演算法模型
- 分類演算法-AdaBoot 演算法演算法boot
- 演算法(八):圖解KNN演算法演算法圖解KNN
- 演算法那些事之冒泡演算法演算法
- 基礎演算法之排序演算法演算法排序
- 最短路-SPFA演算法&Floyd演算法演算法
- 複習常用演算法_冒泡演算法演算法
- 常用演算法之貪心演算法演算法
- 演算法修養--A*尋路演算法演算法
- 演算法進階(8): EM演算法演算法
- 【JAVA演算法】排序演算法 -- 快速排序Java演算法排序
- 非對稱演算法----RSA演算法演算法
- 演算法篇---氣泡排序演算法演算法排序
- 演算法系列:求冪演算法演算法
- PageRank演算法和HITS演算法演算法
- 最短路演算法之:floyd 演算法演算法
- python機器學習演算法——KNN演算法Python機器學習演算法KNN
- A*演算法演算法