#include "stdio.h"
//折半查詢
int searchitem(int array, int len, int key);
int main(int argc, char const *ar**)
;long len = sizeof(array)/sizeof(int);
int location = searchitem(array,10,8);
printf("location = %d\n",location );
return 0;
}/**
*使用折半查詢來查詢乙個數
**引數1 array 陣列
*引數2 len 陣列長度
*引數3 key 查詢的數
*返回查詢的數的位置 , 如果查詢不到返回 -1
*/int searchitem(int array, int len, int key)else if (key < array[mid])
else
}return -1;
}#include "stdio.h"
void selection_sort(int array, int len);//選擇排序
int main(int argc, char const *ar**)
;//1.列印輸出排序之前的元素順序
printf("排序之前:\n");
for (int i = 0; i < 10; ++i)
printf("\n");
//2.排序
selection_sort(a,10);//將陣列名字和陣列的長度傳遞過去
//3.列印輸出排序之後的元素順序
printf("排序之後:\n");
for (int i = 0; i < 10; ++i)
printf("\n");
return 0;}/*
描述:選擇排序
引數:陣列名和陣列長度
返回值:無
*/void selection_sort(int array, int len)}}
}#include "stdio.h"
void bubble_sort(int array, int len);
int main(int argc, char const *ar**)
;//1.列印輸出排序之前的元素順序
printf("排序之前:\n");
for (int i = 0; i < 10; ++i)
printf("\n");
//2.排序
bubble_sort(a,10);//將陣列名字和陣列的長度傳遞過去
//3.列印輸出排序之後的元素順序
printf("排序之後:\n");
for (int i = 0; i < 10; ++i)
printf("\n");
return 0;}/*
氣泡排序函式
引數:陣列和陣列的長度
返回值:無
*/void bubble_sort(int array, int len)}}
}
分治演算法的簡單應用
1.要求2n個數的中位數,採用分治策略。每次劃分後,都會去掉一半的數,只剩原來一半的數。遞推關係式為 t n t n 2 o 1 由master定理,可得時間複雜度為o logn include include define n 1000000 using namespace std int a n...
簡單演算法的小應用
最近在牛客網上經常進行一些演算法的練習,分享兩個好玩的題目。附上牛客網的鏈結,當然了,和acm大神相比,這些題是入門的,想學習的童鞋就溫故知新一下吧。對了這是乙個比較好的平台,大家可以沒事來練練手。排序問題 不知道為啥這個題目被分在了排序演算法中,我在寫這道題目的時候,為了提高效率,使用了二分查詢,...
遞迴演算法簡單應用
1.遞迴和非遞迴分別實現求第n個斐波那契數。斐波那契數 亦稱之為斐波那契數列 義大利語 successione di fibonacci 又稱 分割數列 費波那西數列 費波拿契數 費氏數列,指的是這樣乙個數列 1 1 2 3 5 8 13 21 在數學上,斐波那契數列以如下被以遞迴的方法定義 f0 ...