首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
您现在的位置: 程式碼之家 >> 編程語言 >  >> C語言 >> 關於C語言

經典八大排序與三大查找算法圖解總結

     編輯:關於C語言

概覽

本文匯總計算機科學基礎課程中最核心的八大排序算法與三大查找算法,配合複雜度對比圖表,助力快速複習與面試準備。

八大排序算法

交換類

  • 冒泡排序:相鄰比較交換,O(n²),穩定
  • 快速排序:分治法,平均 O(n log n),不穩定

插入類

  • 直接插入排序:構建有序序列,O(n²),穩定
  • 希爾排序:分組插入,O(n^1.3),不穩定
  • 折半插入排序:二分查找插入位置

選擇類

  • 簡單選擇排序:每輪選最小,O(n²),不穩定
  • 堆排序:堆結構,O(n log n),不穩定

歸並類

  • 歸並排序:分治合併,O(n log n),穩定

三大查找算法

  • 順序查找:O(n),無序表適用
  • 二分查找:O(log n),有序表必備
  • 分塊查找:索引+塊內順序,介於兩者之間

複雜度對比表

選擇指南

場景推薦算法
小規模/近乎有序直接插入/冒泡
大規模通用快速排序
要求穩定歸並排序
記憶體受限堆排序

圖片來源:驛落黃昏博客

  1. 上一篇文章:
  2. 下一篇文章:
Copyright © 程式碼之家 All Rights Reserved