遞迴非遞迴實現二分搜尋

2021-10-07 10:24:17 字數 707 閱讀 9535

二分搜尋方法,充分利用了元素間的次序關係,採用分治策略。可在最壞情況下用時間o(logn)時間完成搜尋。

#includeint  binarysearch_recur(int *br, int x, int left, int right)

else

else if (x > br[middle])

else

}return -1;

}int binarysearch(int *br, int x, int n)

if (x > br[middle])

else

}return -1;

}int main()

;//已經排好序

int x = 0;

int left = 0, right = n - 1;

printf("please input the number:");

scanf_s("%d", &x);

printf("二分查詢遞迴實現:");

if (-1 == binarysearch_recur(ar_a, x, left, right))

else

printf("二分查詢非遞迴實現:");

if (-1 == binarysearch_recur(ar_a, x, left, right))

else

}

1152 二分搜尋 非遞迴與遞迴

time limit 1 sec memory limit 128 mb submit 1736 solved 634 submit status web board 在有序序列中查詢某一元素x。首先輸入乙個正整數n n 100000 表示該序列有n個整數,然後按從小到大的順序輸入n個整數 接著是乙...

二分查詢演算法 遞迴 非遞迴實現

package sorttest 名稱 binarysearch 功能 實現了折半查詢 二分查詢 的遞迴和非遞迴演算法.說明 1 要求所查詢的陣列已有序,並且其中元素已實現comparable介面,如integer string等.2 非遞迴查詢使用search 遞迴查詢使用searchrecurs...

二分查詢實現(遞迴和非遞迴)

遞迴的二分查詢,查詢單個值 時間複雜度 log2n 有點像二叉排序樹的查詢 param arr 待查詢陣列,有序 param low param high param findval 待找值 return 待找值的下標,沒有返回 1 public static intbinarysearch int...