Python二分查找算法,二分查找非递归算法

  Python二分查找算法,二分查找非递归算法

  二分法查找元素

  二分法是一个基本的算法,就是在一个有序数组中快速找到元素。

  内容如下。

  1)首先,将序列分为两部分。

  )2)将中值与检索到的值进行比较,以确认检索到的值在哪个范围内。

  3)将确定的范围再次分成两半,进行上述操作,直到找到目标元素的位置。非函数递归的二分法

  不说话直接上代码。

  # include stdio . hint main((inta[10000],n,I,x,low=0,mid,high,j=0,b=-1;//定义变量scanf的高( %d ,n)=n-1;for(I=0;在;I ) Scanf(%d ,a[I];//使用数组存储数据}scanf(%d ,x);//输入要搜索的元素while (low=high )//决定循环条件)j;//J周期次数,即搜索次数MID=(低高)/2;//二分法if(a[mid]x )//这两种情况对应两个if条件。使用循环逐渐缩小搜索范围,直到找到//结果({ high=mid-1;(if)a[mid]x){ low=mid 1;} If(a[mid]==x)/如果循环中的值和你要找的值相同,可以输出结//液体,同时退出循环(printf(%d\n ,mid);printf(%d ,j);b=0;布莱克;//其中b=0用于确认找到要搜索的值}if(b==-1 )//b=-1,只输出搜索次数(printf) %d ,j)}未找到目标元素时返回0;//程序结束后返回0。)二分法基本就是这么个思路。直到找到结果,它一直一分为二。

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

相关文章阅读

  • c语言递归法求汉诺塔,汉诺塔递归算法c++语言
  • c语言递归法求汉诺塔,汉诺塔递归算法c++语言,C语言超详细讲解递归算法汉诺塔
  • javan的阶乘的递归算法,递归算法实现阶乘
  • javan的阶乘的递归算法,递归算法实现阶乘,Java算法之递归算法计算阶乘
  • 用递归法求汉诺塔问题Python,汉诺塔递归算法编程
  • 递归算法经典实例,递归算法一般利用什么实现
  • 深度优先搜索的递归算法,设计一个程序实现深度优先搜索(使用递归算法)
  • 汉诺塔问题递归算法实现过程,使用递归方法实现汉诺塔问题的求解编程
  • 迭代算法与递归算法,简述迭代和递归的区别
  • python递归函数例子,Python递归算法经典实例
  • 递归算法和经典递归例子,递归函数python例子
  • python中递归程序,所有递归程序都可以用非递归算法实现
  • 最简单的递归算法c语言举例,递归算法经典实例c语言
  • 递归算法复杂度分析步骤,递归算法的时间复杂度和空间复杂度
  • python递归函数详解,Python递归算法经典实例
  • 留言与评论(共有 条评论)
       
    验证码: