一.二分查找
1、二分查找(Binary Search)
二分查找又称折半查找,它是一种效率较高的查找方法。
二分查找要求:线性表是有序表,即表中结点按关键字有序,并且要用向量作为表的存储结构。不妨设有序表是递增有序的。
2、二分查找的基本思想
二分查找的基本思想是:(设R[low..high]是当前的查找区间)
(1)首先确定该区间的中点位置:mid=(low+high)/2
(2)然后将待查的K值与R[mid].key比较:若相等,则查找成功并返回此位置,否则须确定新的查找区间,继续二分查找,具体方法如下:
①若R[mid].key>K,则由表的有序性可知R[mid..n].keys均大于K,因此若表中存在关键字等于K的结点,则该结点必定是在位置mid左边的子表R[1..mid-1]中,故新的查找区间是左子表R[1..mid-1]。
②类似地,若R[mid].key<K,则要查找的K必在mid的右子表R[mid+1..n]中,即新的查找区间是右子表R[mid+1..n]。下一次查找是针对新的查找区间进行的。
因此,从初始的查找区间R[1..n]开始,每经过一次与当前查找区间的中点位置上的结点关键字的比较,就可确定查找是否成功,不成功则当前的查找区间就缩小一半。这一过程重复直至找到关键字为K的结点,或者直至当前的查找区间为空(即查找失败)时为止。
3
没有合适的资源?快使用搜索试试~ 我知道了~
C# 经典排序算法大全和二分查找算法
共24个文件
cs:7个
exe:3个
pdb:2个
5星 · 超过95%的资源 需积分: 5 92 下载量 108 浏览量
2011-03-15
11:39:20
上传
评论
收藏 41KB RAR 举报
温馨提示
用C#实现的经典排序算法汇总大全,以及调用方法和C#实现的二分查找算法.
资源推荐
资源详情
资源评论
收起资源包目录
Search.rar (24个子文件)
Search
Search.suo 14KB
Search.sln 908B
Search
Sorted.cs 3KB
bin
Debug
Search.vshost.exe 14KB
Search.pdb 24KB
Search.vshost.exe.manifest 490B
Search.exe 11KB
Form1.Designer.cs 5KB
Search.csproj 4KB
Program.cs 487B
obj
Debug
Search.pdb 24KB
Search.Form1.resources 180B
Search.csproj.GenerateResource.Cache 847B
Search.Properties.Resources.resources 180B
TempPE
Refactor
Search.exe 11KB
Search.csproj.FileListAbsolute.txt 461B
说明.txt 1KB
Form1.cs 3KB
Form1.resx 6KB
Properties
Resources.resx 5KB
Settings.settings 249B
AssemblyInfo.cs 1KB
Settings.Designer.cs 1KB
Resources.Designer.cs 3KB
共 24 条
- 1
资源评论
- xl_info012015-09-10不错,非常实用的学习资料!
- xiaowen_20092018-09-27还没来记得看,应该不错的样子
- 人在北漂2014-03-12挺不错的学习资源
- Larry_Smith2013-09-15不错,很实用的奥
- puzhichen2014-10-23不错,但是还没仔细看。
鹅滴神啊
- 粉丝: 2
- 资源: 7
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功