`
zqynux
  • 浏览: 36786 次
  • 性别: Icon_minigender_1
  • 来自: 湖南
社区版块
存档分类
最新评论

折半搜索

阅读更多
  折半搜索的思想很简单, 就是假设有一个集合S={a1, a2, a3, a4...an}, 其中满足(a[i-1] < a[i]).. 折半的就先和中间的比较, 如果比中间值的大, 如果t在集合里面的话, 那么就一定只会在后半段了, 不会在前半段.. 以此类推吧``
int search(int *a, int size, int t)
{
	int low, high, mid;
	low = 0;
	high = size - 1;
	while(low <= high){
		mid = (low + high) / 2;
		if(t == a[mid]){
			return mid;
		}
		if(a[mid] > t){
			high = mid - 1;
		}else{
			low = mid + 1;
		}
	}
	return -1;
}
分享到:
评论
7 楼 kulinglei 2010-05-05  
提烟而过 写道
问下楼主:你是拿了别人的注册号在这里害别人,还是没事在这里装-B啊!

不要这么伤害别人
6 楼 jy00105276 2010-04-14  
没看代码,看描述难道是2分法?

是的话不一定是a[i-1] < a[i],有序就好阿
5 楼 提烟而过 2010-04-12  
问下楼主:你是拿了别人的注册号在这里害别人,还是没事在这里装-B啊!
4 楼 zqynux 2010-03-31  
fffvvvzz 写道
11-15


11 12 13 14 15 这五个?
我这里都可以啊`
3 楼 fffvvvzz 2010-03-31  
11-15
2 楼 zqynux 2010-03-30  
fffvvvzz 写道
没找到就挂了

能够具体给出一个例子吗`?
  我这里调试了一下,, 没发现什么异常`
1 楼 fffvvvzz 2010-03-30  
没找到就挂了

相关推荐

    折半搜索 c++ 折半搜索 c++

    折半搜索,也称为二分查找,是一种在有序数组中查找特定元素的高效算法。它的工作原理是通过不断地将搜索范围减半,直到找到目标值或者确定数组中不存在该值为止。这种算法在计算机科学中广泛应用,特别是在大量数据...

    7.3 折半搜索1

    7.3 折半搜索1

    折半搜索.cpp

    折半搜索.cpp

    数据结构实验——折半查找

    折半查找是数据结构中,查找的其中一种。此资源不但包括折半查找的算法,还包括帮助其运行的其他代码,可直接运行以实现折半查找。注:输入数据时,要将数据从大到小依次输入,方可实现折半查找。

    JS数组搜索之折半搜索实现方法分析

    折半搜索(又称二分搜索)是一种在有序数组中查找特定元素的高效算法。在JavaScript中,折半搜索的实现首先要求待搜索的数组是有序的,即数组中的元素按照一定的顺序排列。算法的基本思想是每次将搜索范围减半,直到...

    java 快速排序 折半查找的界面实现 (递归与分治法)

    快速排序和折半查找是两种在计算机科学中广泛使用的算法,尤其在数据处理和搜索操作中扮演着重要角色。在Java编程中,这两种算法都可以通过递归和分治策略进行实现,以提高效率和可读性。下面我们将深入探讨这两个...

    折半算法的代码

    折半查找算法广泛应用于各种需要在有序数组中高效查找元素的场景,如数据库查询优化、搜索引擎结果排序等。此外,在计算机科学的许多其他领域中也有重要的应用,例如在排序算法(如归并排序)的实现过程中也会利用到...

    折半法搜索噪底matlab代码

    用于折半搜索噪底,不过对输入原始信号的信噪比有要求,具体可看代码

    Chapter7 搜索结构 (2)1

    搜索方法包括顺序搜索、折半搜索、分块搜索等,而搜索算法的性能分析则包括算法的时间效率、平均搜索长度、搜索过程中关键码的平均比较次数或平均读写磁盘次数等。 静态搜索结构可以采用线性表表示,常用的搜索方法...

    实验四-搜索-实验报告.doc

    实验报告的目的是让学生深入理解和应用数据结构中的搜索算法,包括顺序搜索、折半搜索和索引搜索等。在实验过程中,学生需要编写源程序,并通过实际运行和调试来验证算法的正确性和效率。 首先,折半搜索(Binary ...

    数据结构第7章复习重点.doc

    - **折半搜索树构建**:根据给定的有序列表构建折半搜索树,然后计算平均搜索长度。 - **计算平均搜索长度**:计算搜索成功的平均搜索长度和搜索不成功的平均搜索长度。 2. **习题7-9解析**: - **不同情况下的...

    第七章 搜索结构.ppt

    3. 折半搜索(二分查找):对于有序顺序表,折半搜索提供了更高效的搜索效率。这种方法首先找到中间元素,然后根据中间元素的关键码与目标值的关系来缩小搜索范围。如果中间元素就是目标,搜索成功;如果中间元素...

    算法分析 二分搜索算法

    二分搜索算法,也称为折半搜索,是一种在有序数组中查找特定元素的有效方法。它的核心思想是通过不断缩小搜索范围,以递归或迭代的方式快速定位目标值。该算法充分利用了数组的有序特性,极大地提高了搜索效率。 ##...

    C语言 二分搜索源代码及界面演示

    二分搜索,也称为折半搜索,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分成两半,然后比较中间元素与目标值,根据比较结果决定是在左半部分还是右半部分继续搜索。这个过程一直持续到找到目标...

    算法文档无代码浅谈部分搜索+高效算法在搜索问题中的应用

    - **二分搜索**,又称折半搜索,要求数据集必须是有序的。该算法将数据集分成两半,检查中间项是否是搜索项,然后根据比较结果排除一半数据集,对剩余的一半继续进行二分搜索,直到找到目标或者搜索范围为空。二分...

    C++实现的二分搜索

    二分搜索,也称为折半搜索,是一种在有序数组中查找特定元素的高效搜索算法。它的基本思想是通过不断地将搜索区间对半减小来快速定位目标值。这个概念源于数学上的对数函数,因为每次查找都使搜索范围减少一半,所以...

    C++二分搜索法(计算机算法原理)

    二分搜索法,又称折半搜索,是一种在有序数组中高效查找目标值的算法。本文将深入探讨C++中的二分搜索法实现及其背后的计算机算法原理。 #### 一、二分搜索法的基本原理 二分搜索法基于以下关键思想:如果目标值...

    erfensousuo.rar_二分搜索

    二分搜索,也被称为折半搜索,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分成两半,然后比较中间元素与目标值,根据比较结果决定是在左半部分还是右半部分继续搜索,直到找到目标元素或者搜索...

    二分搜索 java 标题不够长

    二分搜索,也称为折半搜索,是一种在有序数组中查找特定元素的搜索算法。它的基本思想是将数组分成两半,然后比较中间元素与目标值,根据比较结果决定是在左半部分还是右半部分继续搜索,从而缩小搜索范围。这种方法...

Global site tag (gtag.js) - Google Analytics