`
suxu
  • 浏览: 12051 次
  • 性别: Icon_minigender_1
  • 来自: 重庆
社区版块
存档分类
最新评论

Ruby实现二分法查找

阅读更多

 

def binary_search
  a = [10,57,68,70,78,90,122]
  search = 78
  index = 0 , start_index = 0 , end_index = a.length
  while(true)
    index = start_index + ((end_index - start_index) / 2)
    start_index = index if a[index] < search
    end_index = index if a[index] > search
    break if a[index] == search
   end
   puts  "find by"+ index
end

 

Java

 

 

public static void main(String[] args) {
	        // sorted array
	        int[] a = {10,57,68,70,78,90,122};
	        //
	        int search = 78;
	        int index = 0;
			int start = 0;
			int end = a.length;
			while(true){
				//get index
				index = start+((end-start)/2);
				if(a[index]<search){
					start = index;
				}else if(a[index]>search){
					end = index;
				}else{
					break;
				}
			}
	        System.out.println("find by "+ index);
	 }
分享到:
评论

相关推荐

    数据结构快速排序二分法查找

    在本文中,我们将详细介绍快速排序和二分法查找的原理、实现和应用。 快速排序 快速排序(Quicksort)是一种基于比较的排序算法,通过递归的方式将数组分成两个部分,左边部分的元素都小于或等于基准元素,右边...

    C语言实现的二分法快速查找|二分法排序|二分法查找C#

    2. 使用循环或递归实现查找逻辑,其中包含计算中间位置、比较和调整边界等操作。 3. 根据查找结果输出相应的信息。 C#中还可以利用内置的`.FindIndex()`方法或`Array.BinarySearch()`函数来实现二分查找,这些方法...

    二分法查找算法代码 c语言实现

    在这个资源包中,我们重点关注的是使用C语言实现的二分法查找算法。 在C语言中,二分法查找的基本思路是这样的: 1. 首先,我们需要一个已排序的数组,因为二分法依赖于数据的有序性。 2. 然后,设置两个指针,一...

    c语言 二分法查找

    1. **递归实现**:上述代码采用了递归的方式实现了二分法查找。`search` 函数接收四个参数:数组 `a`、查找范围的起始索引 `from`、结束索引 `to` 和目标值 `key`。 2. **终止条件**:当 `to 时,表示当前查找范围...

    java算法——二分法查找

    二分法查找 *进行二分法查找的前提是数组已有序 *查找范围的上下界

    用函数实现二分法查找数的下标 整型数组元素

    设计函数能够用二分法查找元素对应下标,同时可以检测出用户是否输入有误,鲁棒性较好。

    Java程序设计基础:一维数组应用查找二分法查找).pptx

    ——二分法查找 目录 课程导入 1 清楚并牢记二分法的实现条件 2 理解二分法的实现思路 3 读懂二分法的实现代码 数组的查找——二分法查找 也称拆半查找法,是一种高效的查找方法,前提条件是数组元素必须已经按升序...

    改进的二分法查找

    【二分法查找】是一种在有序数组中查找特定元素的高效算法。它的基本思想是将查找区间不断减半,直到找到目标元素或者确定元素不存在。在每次比较后,根据目标元素与中间元素的大小关系,将查找范围缩小至中间元素的...

    二分法数据查找C语言实现

    ### 二分法数据查找C语言实现 #### 知识点概述 二分查找(Binary Search),也称为折半查找,是一种在有序数组中查找某一特定元素的搜索算法。二分查找采用分而治之的策略,通过将查找区间分成前后两部分来减少...

    java实现二分法查找出数组重复数字

    java实现二分法查找出数组重复数字 java二分法查找出数组重复数字是java编程语言中的一种常见算法,用于查找数组中的重复数字。在本文中,我们将详细介绍java实现二分法查找出数组重复数字的方法,并提供了具体的...

    易语言有序二分法查找

    在这个主题中,我们将深入探讨有序二分法查找的原理、实现以及在易语言中的应用。 ### 1. 有序二分法查找原理 有序二分法查找基于分治策略,适用于已排序的线性数据结构,如数组。其基本思想是将搜索区间不断缩小...

    图解数据结构二分法查找法

    ### 图解数据结构:二分法查找法 #### 一、引言 在计算机科学领域,数据结构与算法是核心的基础知识。其中,查找算法作为数据处理中的关键环节,其效率直接影响着系统的性能。二分查找法(Binary Search),作为一...

    数据结构之二分法查找和散列查找实验

    在C语言中实现二分法查找,你需要定义一个函数,该函数接受一个有序数组、目标值以及数组的起始和结束索引作为参数,并返回目标值在数组中的位置或者一个特殊值表示未找到。 接下来,我们转向散列查找(Hashing)。...

    二分法查找MATLAB程序

    使用二分法查找的MATLAB程序编写,方便刚接触MATLAB的同学分享学习。

    写出二分法查找算法函数实现。

    ### 二分法查找算法详解 #### 一、引言 二分法查找(Binary Search),也称为折半查找,是一种在有序数组中查找特定元素的高效算法。它的工作原理是通过将查找区间不断地对半分来缩小查找范围,直至找到目标元素或...

    二分法查找在PLC编程中的应用.pdf

    在应用案例中,二分法查找可以与SCL语言结合,用于实现复杂公式的反算功能。例如,在自动化控制系统中,如果需要根据已知输出结果反推输入参数的设置值,可以利用二分法查找在SCL语言编写的程序中快速确定合适的参数...

    学学Python_34函数_创建函数04 二分法查找

    在Python中实现二分查找,可以编写如下的函数模板: ```python def binary_search(arr, target): left, right = 0, len(arr) - 1 while left mid = (left + right) // 2 if arr[mid] == target: return mid ...

    二分法查找源码

    二分法查找和顺序查找 排序后二分法

    要求演示二分法查找过程

    题目要求演示二分法查找过程,用箭头跟踪指示出二分查找过程中的查找位置。设计思想为用两个数组实现,一个用于存数据另一个用来存箭头。只要存箭头的下标于每次查找的数的下标相等就可以实现,难点在于如何把数得...

Global site tag (gtag.js) - Google Analytics