黑马程序员-折半法判断数组元素位置
来源:互联网 发布:天高云淡秒赞4.0源码 编辑:程序博客网 时间:2024/06/05 15:40
---------------------- Windows Phone 7手机开发、.Net培训、期待与您交流! ----------------------
private void button1_Click(object sender, EventArgs e) { int[] a = { 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17};//数组 int key = int.Parse(txtKey.Text);//找到要搜索的那个KEY int location = BindarySearch(a, key);//位置 s.Text += "位置"+location; if (location == -1) { s.Text += "未发现"; } } public int BindarySearch(int[] array, int key)//返回所在的位置 { int low = 0, high = array.Length - 1; int middle; while (low <= high) { middle = (low + high) / 2; if (array[middle] == key) { return middle; } else if (array[middle] > key) { high = middle - 1; } else { low = middle + 1; } s.Text += middle.ToString()+" "; } return -1; }
折半法判断,更加适用于排序号的数组,查找元素的位置
线性查找则更适合于乱序数组。
程序员不能瞎大方!!!!严谨性,不能随意的扩大折半数组的长度
if (array[middle] == key) { return middle; } else if (array[middle] > key) { high = middle - 1;(本想+1又何妨) } else { low = middle + 1;(-1更广范围的判断) }
- 黑马程序员-折半法判断数组元素位置
- 黑马程序员-折半查找数组中的元素
- 黑马程序员_Java中数组元素的折半查找
- 折半查找确定插入数组中元素的位置
- 黑马程序员 第8天 数组的折半查找
- 黑马程序员 交换数组中的元素
- 黑马程序员-数组去重复元素
- 【专题】 - 数组元素操纵探索 - 黑马程序员
- 利用折半查找,寻找元素在数组中合适恰当的位置
- 黑马程序员Java折半查找
- 黑马程序员:Java数组简介与数组的应用:选择排序、冒泡排序、折半查找
- 《黑马程序员》折半查找法实现及测试练习
- 黑马程序员_JavaSE基础05 之 数组的操作 求最值 排序 折半查找
- 黑马程序员_JavaSE基础06 之 数组的操作 求最值 排序 折半查找
- 黑马程序员Java基础第三章-----数组,算法(冒泡,选择,折半查找)
- 黑马程序员-IOS学习笔记 折半查找 在数组中插入一个数返回index
- 黑马程序员_C语言基础_数组之冒泡排序、快速选择排序、折半查找
- 获取数组元素位置
- iOS开发---开源项目和开源类库篇(持续更新中)
- JavaScript-省市县三级联动菜单
- Linux系统串口接收数据编程
- android:minSdkVersion =3改成7导致我的surfaceview的位置出现偏差。 报了数组越界异常。
- Python sys 模块
- 黑马程序员-折半法判断数组元素位置
- 苹果 Mac OSX 系统虚拟机横向对比 - Parallels 8 与 VMware Fusion 5 性能跑分大比拼
- 利用seo数据分析提高网站收录
- MySQL数据类型
- solaris intrd 进程
- memmove的使用
- 移动应用市场爆炸性增长
- hide tab ios
- 【password】操作系统认证和口令文件及两个相关的参数.