演算法總結 選擇排序,插入排序

2021-07-15 11:48:21 字數 377 閱讀 5309

演算法是一種解決問題的思想,所以了解每種經典演算法也就是了解它解決問題的思想,不能過渡在意**實現本身。不同演算法之間的優缺比較和應用場景也值得注意,畢竟學為所用。

選擇排序:找到陣列當中最小元素,把它和陣列的第乙個元素交換。在剩下的元素中找到最小的元素,和陣列的第二個元素交換。以此類推。這種演算法每次遍歷陣列,並不會對之後尋找最小值有所影響,感覺在一定程度上造成了浪費。它需要比較n*n/2次,交換n次,排序時間取決於比較次數,當元素順序或者元素相同的情況下並沒有時間上的改善。

void selectsort(int* datasource,int datanum)

while(h>=1)

{for(int i=h;i=h;j-=h)

{if(sourcedata[j]

冒泡,選擇,插入排序演算法 總結

之前一直都沒有怎麼注意簡單演算法的編寫,現在重寫翻閱了下資料,才慢慢熟悉。package com.klay.sort public class klay int arr1 int arr2 bubbo arr for int i 0 i arr.length i system.out.println...

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

本文做的排序都是預設公升序排序,即從小到大,此為大前提 l 2,5,3,6,1,4,0,9,18,11,15,12 選擇排序 依次拿乙個元素 從第二個元素開始 和第乙個位置元素比較,如果比第乙個元素小就交換位置,這樣第一次迴圈結束,最小的數就放在了第乙個,以此類推 第一層迴圈確定元素要放的位置,所以...

排序演算法總結 插入排序

插入排序,顧名思義就是將乙個元素插入到適當的位置。其演算法核心是 1.將第乙個元素看做是個單獨的序列。顯然,只有乙個元素的序列肯定是有序序列。2.然後將和第二個元素做比較。如果第二個元素小,那麼就將第二個元素插入到第乙個元素前面,這樣我們就得到了乙個擁有兩個元素的有序序列。3.依次掃瞄剩餘元素,每掃...