c++实现插入和冒泡排序
生活随笔
收集整理的這篇文章主要介紹了
c++实现插入和冒泡排序
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
插入排序的最好的情況是O(n),最壞的情況O(n^2),因此是穩定的
冒泡排序最好的情況是O(n),最壞的情況O(n^2)因此是穩定的
//插入排序
void insert_sort(int* arr, int n) {
int temp = -1;
for (int i=1;i<n;++i){
temp = arr[i];
int j = i - 1;
//從后往前搬動數據
for (;j>=0;–j){
if (arr[j] >=temp){
break;
}
arr[j+1] = arr[j];
}
//當前的后一個位置,放入數據,空位置
arr[j + 1] = temp;
}
}
冒泡排序
void bubble_sort(int array[], int n)
{
bool flag = false;
for (int i = 1; i < n; i++) {
flag = false;
for (int j = 0; j < n-i; j++) {
if (array[j] < array[j + 1]) {
flag = true;
array[j] ^= array[j + 1];
array[j + 1] ^= array[j];
array[j] ^= array[j + 1];
}
}
if (!flag) {
break;
}
}
}
總結
以上是生活随笔為你收集整理的c++实现插入和冒泡排序的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 使用IntelliJ IDEA和Mave
- 下一篇: s3c2440移植MQTT