二分查詢:
二分查詢又稱折半查詢是應用於有序數列中找到目標數的演算法。二分查詢較有序查詢的優點是比較次數少,查詢速度快,效能穩定『時間複雜度為o(lgn)。
現在寫出乙個在數列arr = 中找到目標數k = 8的過程。
int binary_search(int arr, int k, int sz)
else if (arr[mid] > k)
else
}return -1;}
int main()
; int k = 8;
int sz = sizeof(arr) / sizeof(arr[0]);
int ret = binary_search(arr, k, sz);
if (ret == -1)
printf("找不到\n");
else
printf("找到了:%d\n ", ret);
system("pause");
return 0;
}
``
氣泡排序:以公升序為例
氣泡排序又稱為氣泡排序或泡沫排序。具體操作為從第乙個數開始將兩個相鄰元素比較,若不符合大小要求就交換,一趟將乙個最大數字放置最後。
*構造乙個函式用來交換乙個陣列中的兩個數用傳址。
void swap(int* x, int* y)
void bubble_sort(int arr, int sz)
} }}int main()
; int sz = sizeof(arr) / sizeof(arr[0]);
bubble_sort(arr, sz);
for (i = 0; i < sz; i++)
system("pause");
return 0;
}
如有問題,希望多多指正。 氣泡排序 二分查詢
include include include using namespace std int bsearch int t,int n,int x 二分查詢 return null inline void swap int a,int b void init int t,int n for int ...
氣泡排序 二分查詢
二分查詢 在label中無法顯示陣列 解決方法 string str 定義 字串str並賦初值 後 str str myarray i tostring 用str 接收已排序陣列再在label中顯示。剛開始寫二分查詢時找到分支 if sortarray mid num labelres.text 已...
氣泡排序,二分查詢
氣泡排序 lst 88,5,8,6,1,23 for a in range len lst 記錄內部排序的次數 i 0 while i len lst 1 把最大值移動到右端 if lst i lst i 1 比較,lst i lst i 1 lst i 1 lst i 交換 i i 1 print...