算法 - 二分查找(非递归实现二分查找)
package Algorithm.binarysearchnorecursion;public class BinaaySearchNoRecur {public static void main(String[] args) {int arr [] = {1,2,3,4,5};int b = binarySearch(arr, 0);System.out.println(b);}//二分查找的非递归实现public static int binarySearch(int [] arr, int target){int left = 0;int right = arr.length - 1;boolean flag = true;while(left <= right){int mid = (left + right) / 2;if (target == arr[mid]){return mid;}if (target > arr[mid]){left = mid + 1;}else {right = mid - 1;}}return -1;}
}
算法 - 二分查找(非递归实现二分查找)相关推荐
- 二分查找非递归方式实现
思路分析 代码实现 package com.atguigu.binarysearchnorecursion;/*** @创建人 wdl* @创建时间 2021/4/2* @描述*/ public cl ...
- 二叉树的创建和遍历(递归和非递归),查找最大值,树的高度
为什么80%的码农都做不了架构师?>>> /** * 链式结构 * @author gao.mq * */ public class BuildLinkedTree ...
- 一步一步写算法(之非递归排序)
[ 声明:版权所有,欢迎转载,请勿用于商业用途. 联系信箱:feixiaoxing @163.com] 在上面一篇博客当中,我们发现普通查找和排序查找的性能差别很大.作为一个100万的数据,如果使用 ...
- 简述树的深度优先及广度优先遍历算法,并说明非递归实现?
深度优先遍历二叉树. 1. 中序遍历(LDR)的递归算法: 若二叉树为空,则算法结束:否则: 中序遍历根结点的左子树: 访问根结点: 中序遍历根结点的右子树. 2. 前序遍历(DLR)的递归算法: 若 ...
- 快速排序非递归算法c语言实现,数据结构与算法----3.5 非递归的快速排序方法
[c++]代码库#include using namespace std; #include using namespace std; typedef int KeyType; struct LEle ...
- 二分查找算法递归和非递归实现
自己接触和了解过的查找算法总结起来分为3个吧: 1. 静态查找(主要是二分查找,效率较高) 2. 动态查找(二叉查找树) 3. 哈希表 首先来说二分查找吧! 基本思想:假设在一个已经排好序的有序序列( ...
- 二分查找算法(非递归)
1.二分查找算法(非递归)介绍 前面我们讲过了二分查找算法,是使用递归的方式,下面我们讲解二分查找算法的非递归方式 二分查找法只适用于从有序的数列中进行查找(比如数字和字母等),将数列排序后再进行查找 ...
- 常用十大算法 非递归二分查找、分治法、动态规划、贪心算法、回溯算法(骑士周游为例)、KMP、最小生成树算法:Prim、Kruskal、最短路径算法:Dijkstra、Floyd。
十大算法 学完数据结构该学什么?当然是来巩固算法,下面介绍了十中比较常用的算法,希望能帮到大家. 包括:非递归二分查找.分治法.动态规划.贪心算法.回溯算法(骑士周游为例).KMP.最小生成树算法:P ...
- 二十一、二分查找算法(递归非递归)
一.二分查找思路分析 1.首先确定该数组中间的下标 ,即mid=(left+high)/2; 2.然后让需要查找的value值与array[mid]值进行比较 2.1)findVal > arr ...
最新文章
- return false
- bash给脚本加进度条_进度条——shell脚本实现
- 【Struts2复习知识点二十二】- 国际化I18N原理
- Android之ScrollView
- 使用ie浏览器设置Domain无法使用session的问题解决办法
- Tesla对德国政府的审批流程表示受够了
- js打开新窗口的两种方式
- Zookeeper原理架构
- keepalived 邮件通知
- SECS/GEM协议开发系列(一)准备工作
- MIMO系统模型构建
- mysql 用户、数据库、表的基本操作
- VMware Workstation 12 Pro 安装 mac最新系统版本10.12.3
- IDEA标签栏多行显示设置
- 解决MATLAB2018b打开m文件后注释乱码的问题
- 「计算机基础」进制转换
- Logstash 同步时报illegal_argument_exception:startOffset must be non-....endOffset must be = startOffset
- eNSP配置静态路由实例
- 黑洞2007自定义协议版本 演示穿越卡巴6和ZA防火墙
- 如何查看虚拟机的ip
热门文章
- 在output 子句和 scope_identity() 混合使用的时候的注意事项
- html和css可以用在ssh里面么,在网站中使用SSH
- java jxl 写 excel文件_Java使用jxl写入Excel文件
- mysql分布式一致性hash_分布式哈希一致性
- python对图片颜色校正_使用Python PIL更改图像色调
- 1350B. Orac and Models
- 服务器配置和性能,服务器性能配置(硬件)
- 深入浅出MFC文档/视图架构之文档模板
- 图解WinCE6.0下的内核驱动和用户驱动
- android jni release,Android NDK 设置编译模式debug和release