#include
using
namespace
std;
/* 簡單排序:
平均時間複雜度都是o(n方)級別。包括:氣泡排序、插入排序、選擇排序
說明:實現的演算法都是公升序排序。
*/void swap(int &e1, int &e2)
/* 氣泡排序(穩定):
重複地走訪過要排序的元素列,一次比較兩個相鄰的元素,如果他們的順序(如從大到小、首字母從
a到z)錯誤就把他們交換過來。走訪元素的工作是重複地進行直到沒有相鄰元素需要交換,也就是說
該元素已經排序完成。這個演算法的名字由來是因為越大的元素會經由交換慢慢「浮」到數列的頂端
(公升序或降序排列),就如同碳酸飲料中二氧化碳的氣泡最終會上浮到頂端一樣,故名「氣泡排序」。
*/void bubblesort(int *arr, int len)
}if(flag == 0) //某趟排序沒有進行交換時,排序結束
break;
}}/*
插入排序(穩定):
從索引為1的元素(設為temp)開始開始,每次把之前的元素調整成有序序列。由於之前的元素都是有序序列,
從後向前若temp小於當前遍歷到的元素(arr[j]),此元素後移。否則退出此次遍歷。退出後把temp插入當前的arr[j]。
*/void insertsort(int *arr, int len)}/*
選擇排序(不穩定):
每次從待排序的資料元素中選出最小的乙個元素,存放在序列的起始位置,直到全部待排序的資料元素排完。
*/void selectsort(int *arr, int len)
}int main()
C 三種簡單排序 冒泡 選擇 插入
本來是大一c語言基礎,就在這裡記錄一下,就當存個板子 插排是最簡單一種排序方法,也是複雜度較高的一種 void sort insert sort int num num j temp 插入排序的複雜度高,但是是一種穩定的排序方法 include iostream void bubble int a ...
三種簡單排序比較總結(冒泡 插入 選擇)
首先我們了解一下三種演算法穩定性 演算法 穩定性排序方式 時間複雜度 最好時間 空間複雜度 冒泡穩定 交換o n2 o n o 1 插入穩定 直接插入 o n2 o n o 1 選擇不穩定 直接選擇 o n2 o n o 1 三種最好時間都是 在接近有序的時候!接著我們看一下 首先我們定一下陣列 1...
演算法之三種簡單排序 插入 冒泡 插入
插入排序 特點 迴圈陣列,依次比較之前排好順序的資料與該資料的大小 public static void insertsort long arr 氣泡排序 特點 依次迴圈陣列,依次將最小的資料資訊浮於最上面 public static void bubblesort long arr 選擇排序 特點...