2.型別通用版選擇排序核心**:
int
find_max_index
(int
* arr,
int n)
}return max_index;
}void
select_sort
(int
* arr,
int n)
}}
#include
#include
#include
#include
#include
//生成n個資料的隨機數列[1,100]
int*
createrandarray
(int n)
return arr;
}// 列印陣列
void
printarray
(int
* arr,
int n)
printf
("\n");
}// 判度陣列是否是非遞減排序
bool isorder
(int
* arr,
int n)
else
}return true;
}//選擇排序******************************===
intfind_max_index
(int
* arr,
int n)
}return max_index;
}void
select_sort
(int
* arr,
int n)}}
intmain()
}return max_index;
}void
ssort
(void
* arr,
int n,
int size,cmp_t cmp)
}}
#include
#include
#include
#include
#include
//生成n個資料的隨機數列[1,100]
int*
createrandarray
(int n)
return arr;
}// 列印陣列
void
printarray
(int
* arr,
int n)
printf
("\n");
}// 判度陣列是否是非遞減排序
bool isorder
(int
* arr,
int n)
else
}return true;
}void
memswp
(void
* a,
void
* b,
int size)
//公升級版選擇
intfind_max_index
(void
* arr,
int n,
int size,cmp_t cmp)
}return max_index;
}void
ssort
(void
* arr,
int n,
int size,cmp_t cmp)}}
intcmpint
(const
void
* a,
const
void
* b)
intcmpchar
(const
void
* a,
const
void
* b)
test;
intcmptest
(const
void
* a,
const
void
* b)
intmain()
c語言選擇排序 選擇排序法 C語言
直接選擇排序的基本思想 n個記錄的直接選擇排序可經過 n 1 趟直接選擇排序得到有序結果。初始狀態 無序區為 a 1.n 有序區為空。第 1 趟排序 在無序區 a 1.n 中選出最小的記錄a k 將它與無序區的第 1 個記錄 a 1 交換,使 a 1 1 和 a 2.n 分別變為記錄個數增加1的新有...
選擇排序(C語言)
採用先確定位置然後找數字的方法。選定位置或者在最前或者在最後。把選定位置上的數字和所有其他數字做順序調整直到把合適數字放在選定位置上。插入排序 include void insert sort int p num,int size int num 0,num1 0,tmp 0 for num 1 n...
選擇排序(C語言)
以公升序為例 選取陣列第0個位置為最小的元素的位置,將該位置元素依次和陣列剩餘元素做比較,將最小者放入位置0 重複步驟1,依次填充陣列第1 第2個元素 直到最後乙個元素為止。以下為 實現 include include include define arraysize x sizeof x size...