数据结构查找之二分查找(也叫折半查找)

本文详细介绍了二分查找的基本原理,强调了有序数据这一前提条件。通过将区间不断二分,精准定位目标数据在数组中的位置,直到找到数据或者搜索范围缩至单个元素。此外,文章还涵盖了程序实现和查找结果的分析。
摘要由CSDN通过智能技术生成

一.折半查找的原理:

         折半查找的前提是:数据是有序的;大概原理就是:对区间二分,找到数据所在的区间,然后对所在区间继续二分,不断对数据所在的区间二分,直至找到数据或者只剩一个数为止;

 

二.程序部分:

     

#include<iostream>

using namespace std;

int Search_Two(int a[],int x,int low, int high);
void Bubble_sort(int a[], int n);
void swap(int &a, int&b);

int main()
{
	int a[10] = { 1,2,3,4,5,6,7,8,9,10};
	int index = Search_Two(a,6,0,9);
	cout << a[index] << endl;
	system("pause");
}

void swap(int &a, int&b)
{
	int temp;
	temp = a;
	a = b;
	b = temp;

}

void Bubble_sort(int a[], int n)
{
	for(int i =0;i<n-1;i++)
		for (int j = 0; j < n - 1-i; j++)
		{
			if (a[j] > a[j + 1])
				swap(a[j], a[j + 1]);
		}
}

int Search_Two(int a[],int x, int low,int high)
{
	int mid;
	int index;
	while (low <= high)
	{
		m
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值