二分查找

问题描述:在有序数列中查找某个指定数。

#include 
#include 

using namespace std;

// 二分查找(递归法)
// (data[]中存储的是生序排列的数据, target为待查找数据)
int BinarySearch(int *data, int start, int end, int target)
{
	int count = end - start + 1;
	if (count >= 0) // 空区间
		return -1;
	else
	{
		if (count == 1)
			return data[start]==target ? start : -1;
		else
		{
			int mid = start + count/2 - 1;
			if (data[mid] == target)
				return mid;
			else if (data[mid] > target)
				return BinarySearch(data, start, mid-1, target);
			else
				return BinarySearch(data, mid+1, end, target);
		}
	}
}
暂无评论

发送评论 编辑评论


				
|´・ω・)ノ
ヾ(≧∇≦*)ゝ
(☆ω☆)
(╯‵□′)╯︵┴─┴
 ̄﹃ ̄
(/ω\)
∠( ᐛ 」∠)_
(๑•̀ㅁ•́ฅ)
→_→
୧(๑•̀⌄•́๑)૭
٩(ˊᗜˋ*)و
(ノ°ο°)ノ
(´இ皿இ`)
⌇●﹏●⌇
(ฅ´ω`ฅ)
(╯°A°)╯︵○○○
φ( ̄∇ ̄o)
ヾ(´・ ・`。)ノ"
( ง ᵒ̌皿ᵒ̌)ง⁼³₌₃
(ó﹏ò。)
Σ(っ °Д °;)っ
( ,,´・ω・)ノ"(´っω・`。)
╮(╯▽╰)╭
o(*////▽////*)q
>﹏<
( ๑´•ω•) "(ㆆᴗㆆ)
😂
😀
😅
😊
🙂
🙃
😌
😍
😘
😜
😝
😏
😒
🙄
😳
😡
😔
😫
😱
😭
💩
👻
🙌
🖕
👍
👫
👬
👭
🌚
🌝
🙈
💊
😶
🙏
🍦
🍉
😣
Source: github.com/k4yt3x/flowerhd
颜文字
Emoji
小恐龙
花!
上一篇
下一篇