二叉查找(最简单的递归)

来源:互联网 发布:大疆无人机香港知乎 编辑:程序博客网 时间:2024/06/04 18:53
#include<iostream>#include<string>#include <set>using namespace std;#define N 5int binal(int a[], int start, int end, int val){if (start <= end){int index = (start + end) / 2;if (a[index] == val)return val;if (a[index] > val)return binal(a, start, index - 1, val);if (a[index] < val)return binal(a, index + 1, end, val);}return -1;}int main(){int A[N] = { 1,3,5,7,9 };cout << binal(A, 0, 4, 5) << endl;system("pause");return 0;}

0 0