排序演算法 冒泡 選擇 插入排序

2021-08-25 08:42:49 字數 907 閱讀 8226

外層迴圈控制大排序次數,

內層迴圈控制每次大排序的排序次數

一次大排序就可以把最小的資料放在最前面。

1)對陣列中的各資料,依次比較相鄰的兩個元素的大小

2)如果前面的資料大於後面的資料,就交換著兩個資料。經過第一**排序後,便可把最小的資料排好。

3)然後再用同樣的方法吧剩下的資料逐個比較,最後得到從小到大排好的陣列。

void bubblesort(int *a, int len)

} for (k = 0; k < len; k++)

cout << a[k] ;

cout << endl;

}}

通過選擇和交換來實現排序。

1)首先從原始陣列中選擇最小的乙個資料,將其和位於第1個位置的資料交換

2)接著從剩下n-1個資料中選擇次小的乙個元素跟第2個位置的資料交換

3)然後,不斷重複,直到最後兩個資料完成交換

void seclectsort(int *a, int len)

if (k != i) // 將當前大排序中最小的數放在下標為i的位置上

}}

1)首先都陣列的前兩個資料進行從小到大的排序

2)接著將第3個資料與排好序的兩個資料比較,將第3個資料插到合適的位置

3)然後,將第4個資料插入到已排好序的前三個資料當中

4)不斷重複上述過程,直到把最後乙個元素插入到合適位置。

void insertionsort(int *a, int len)

a[j+1] = temp; //退出while的時候j已經做了一次自減(j--),所以退出while代表找到了比temp小元素(下標為j),則將temp放在j的後面。

}}

排序演算法 冒泡 選擇 插入排序

本文簡單總結一下三大排序演算法,如有不足,請多多提意見。簡述 從小到大排序,每次比較兩個元素,看他們的順序有沒有錯,如果錯了就換過來。a 比較abc.元素,如果第乙個比第二個大,則將兩個元素交換位置 bac.再依次將a和c進行比較。b 對每一對相鄰的元素做同樣的工作,從第一對到最後一對。這一次執行完...

《演算法》選擇排序 插入排序 氣泡排序

選擇排序,演算法 p156 package algorithm public class selection p156 for int i 0 i n i public static void main string args test.sort a 思路 將第乙個元素與剩餘所有元素相比,如果有比第...

排序演算法 氣泡排序 選擇排序 插入排序

氣泡排序演算法 氣泡排序是最簡單的排序演算法之一。此演算法具有二次方程增長階,因此僅適合排序小列表。氣泡排序演算法是階o n 2 的演算法 package com.szy.structure.sort public class bubblesort system.out.println 排序前 fo...