二分查找的原理和用法
发表于:2025-01-23 作者:千家信息网编辑
千家信息网最后更新 2025年01月23日,本篇内容主要讲解"二分查找的原理和用法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"二分查找的原理和用法"吧!概念二分查找也称折半查找(Binary Se
千家信息网最后更新 2025年01月23日二分查找的原理和用法
本篇内容主要讲解"二分查找的原理和用法",感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习"二分查找的原理和用法"吧!
概念
二分查找也称折半查找(Binary Search),它是一种效率较高的查找方法。但是,折半查找要求线性表必须采用顺序存储结构,而且表中元素按关键字有序排列
原理分析
前提
必须按照"大到小"或"小到大"的顺序存储的数组列表结构
查找方法
列表进行折半, 取中间元素与目标值进行比较,判断后决定舍去前半段或后半段,最终找到相等值
定义数组长度12,存储1-12的整数,的查找过程示意图
找到值为3都索引
找到值为13所在下标
找到值为11所在下标
复杂度分析
实现方式
递归法
public int binarySearch(int[] arrays, int searchTag, int left, int right){ int mid = (right + left) / 2; if (mid < 0 || mid >= arras.length){ return -1; } if (arrays[mid] == searchTag){ return mid; } if (arrays[mid] > searchTag){ right = mid; } else if (arrays[mid] < searchTag){ left = mid + 1; } if (left >= right){ return -1; } return binarySearch(arrays, searchTag, left, right);}
循环法
public int binarySearch(int[] arrays, int searchTag){ int right = arrays.length, left = 0; while (left < right){ int mod = (right + left) / 2; if (arrays[mid] == searchTag){ return mid; } else if (arrays[mid] > searchTag){ right = mid; } else { left = mid + 1; } } return -1;}
到此,相信大家对"二分查找的原理和用法"有了更深的了解,不妨来实际操作一番吧!这里是网站,更多相关内容可以进入相关频道进行查询,关注我们,继续学习!
原理
方法
存储
下标
元素
内容
所在
数组
结构
顺序
分析
学习
复杂
实用
更深
有序
关键
关键字
兴趣
前提
数据库的安全要保护哪些东西
数据库安全各自的含义是什么
生产安全数据库录入
数据库的安全性及管理
数据库安全策略包含哪些
海淀数据库安全审计系统
建立农村房屋安全信息数据库
易用的数据库客户端支持安全管理
连接数据库失败ssl安全错误
数据库的锁怎样保障安全
数据库隐藏id
查看数据库连接池状态
石材人用什么软件开发
天天有彩互联网科技有限公司
数据库备份文件很大
公司用服务器地址
聊天软件开发的功能选择
影视制作软件开发
gt赛车7 无法与服务器建立连接
微信签到软件开发
合法上海网络技术有限公司
如何查看服务器内存条生产日期
万朋网络技术有限公司
2022部落冲突更新后分服务器
qt软件开发是什么意思
java数据库操作机试题
sql数据库编写代码
数据库的记录数
服务器聊天室
小皮数据库创建数据表
提升网络安全防范意识
i59400f能做服务器吗
serv服务器如何上传文件
mp4服务器
软件开发中组态怎么写
青海创新网络技术服务代理品牌
英诺森软件开发公司
学霸哥哥做软件开发
惟贤网络技术
网络安全工程师主要学什么