input:一系列的無序數
output: 有序數(通過插入排序實現)
插入排序簡介:
依次讀取陣列裡面的數,並且放進res陣列裡面。
舉例:第乙個陣列裡面的數肯定為第一位,第二個放進去的數跟之前的數想比,如果比之前的第乙個數小就插入到res陣列(這也就是插入排序的演算法難點)
最後,res陣列儲存的就是有序的陣列。
我的思路:
很簡單,就是每新增進乙個數的時候和已經新增進的相比較,然後確定位置。
我犯了錯誤,在於:(不用看,給我自己看的)
(1)傳進去的引數用了多次改變了值還在用初值
(2)在找到第乙個可新增的數時沒有通過break結束迴圈,導致出錯。
附上**:
// 插入排序
#include
using
namespace
std;
int num[1000],res[1000];//num儲存輸進的資料,res儲存排序資料
void insert_sort(int num,int n)
res[k]=num[i];
break;
}else}}
for(i=0;icout
<" "; //輸出排序結果
}void main()
insert_sort(num,count);
}
seen
2015-09-01
插入排序的Matlab版實現
函式開始 function outputarg1,outputarg2 insertionsort inputarg1,inputarg2 待排序矩陣,名為sortarray sortarray 5,3,1,1,7,4,9,6,8,10,4 size 函式返回的是x矩陣的行數和列數,m表示行數,n表...
排序 插入排序(python版)
直接插入排序的演算法思路 1 設定監視哨r 0 將待插入紀錄的值賦值給r 0 2 設定開始查詢的位置j 3 在陣列中進行搜尋,搜尋中將第j個紀錄後移,直至r 0 key r j key為止 4 將r 0 插入r j 1 的位置上。def insert sort l for i in range le...
C C 版插入排序
插入排序實現如下 include include include using namespace std 控制排序順序的指示碼 enum comptype 插入排序 template typename datatype void insertsort datatype array,int len,i...