4种二分查找的C++算法
来源:互联网 发布:java与传感器通信 编辑:程序博客网 时间:2024/06/06 19:05
初步实现:
#include<iostream>int _do_while(int &start, int &end, int &want){int mid;do {mid = (start + end) / 2;if (want == mid){std::cout << "\n\n用do_while循环找到这个数啦!\n";printf("%d的地址是%p\n", want, want);break;}else if (want > mid){start = mid + 1;}else{end = mid - 1;}} while (start < end);return want;}int _while(int &start, int &end, int &want){int mid;while (start < end){mid = (start + end) / 2;if (want == mid){std::cout << "\n\n用while循环找到这个数啦!\n";printf("%d的地址是%p\n", want, want);break;}else if (want > mid){start = mid + 1;}else{end = mid - 1;}}return want;}int _go_to(int &start, int &end, int &want){int mid=0;Loop:if (want != mid){mid = (start + end) / 2;if (want > mid)start = mid + 1;else end = mid - 1;goto Loop;} std::cout << "\n\n用goto循环找到这个数啦!\n"; printf("%d的地址是%p\n", want, want); return want;}int 递归(int &start, int &end, int &want){if (start < end){int mid = (start + end) / 2;if (want == mid) {std::cout << "\n\n用递归循环找到这个数啦!\n";printf("%d的地址是%p\n", want, want);}else {if (want > mid) { start = mid + 1; 递归(start, end, want); }else { end = mid - 1; 递归(start, end, want); }}return want;}return want;}int main(){int 开始 = 0, 末尾 = 1024*10^10,查找=99;std::cout << "二分查找程序:\n请输入要查找的数组下限和上限:\n";std::cin >> 开始 >> 末尾;std::cout << "请输入要查找的数:";std::cin >> 查找; std::cout << std::endl;_while(开始, 末尾, 查找);_do_while(开始, 末尾, 查找);递归(开始, 末尾, 查找);//Recursion_go_to(开始, 末尾, 查找);system("pause");return 0;}
运行结果:
阅读全文
0 0
- C 二分查找算法
- c 二分查找算法
- [C]算法 - 二分查找
- C 二分查找算法
- C 二分查找算法
- 4种二分查找的C++算法
- 二分查找算法的C/C++实现
- 二分查找算法的C语言实现
- 算法:二分查找算法(c++)
- C语言实现折半查找(二分查找)的算法
- C语言版二分查找算法
- c语言二分查找算法
- C查找算法——二分查找
- 算法4-二分查找
- 二分查找算法的两种实现
- 快速排序和二分查找算法的实现C语言
- c语言实现的通用二分查找算法
- 《算法导论》4、二分查找实现(C++)
- JQuery Validate(1)---电话号码与邮箱验证
- 解决:Matlab 运行错误License manager error 114
- javascript实现内容溢出手动滚动
- AS 导入github开源项目可能会遇到的问题及解决方法
- Timer与TimerTask的真正原理&使用介绍
- 4种二分查找的C++算法
- LINQ To SQL 语法及实例大全
- 一段js实现实现手机自适应兼容所有手机和平板
- 机器学习经典算法之-----最小二乘法
- 解决elasticsearch超过10000条无法查询的问题
- 数据库索引的简单理解
- MCC 移动设备国家代码 (Mobile country code) 概述 MCC 国家/地区代码 注释 概述 移动设备国家代码 ( Mobile country code / MCC ) 定义于国际
- An introduction to Generative Adversarial Networks (with code in TensorFlow)
- c++广搜法跳马问题(队列)