当前位置: 首页 > news >正文

c 网站开发的书籍陕西城乡建设局网站

c 网站开发的书籍,陕西城乡建设局网站,石家庄软件开发定制,可信赖的邵阳网站建设一、理论基础 二分搜索,也称折半搜索、对数搜索,是一种在有序数组中查找某一特定元素的搜索算法。 二分搜索是一种高效的查找算法,适用于在已排序的数组中查找特定元素。它的基本思想是通过不断将搜索区间对半分割,从而快速缩小…

一、理论基础

二分搜索,也称折半搜索、对数搜索,是一种在有序数组中查找某一特定元素的搜索算法。

二分搜索是一种高效的查找算法,适用于在已排序的数组中查找特定元素。它的基本思想是通过不断将搜索区间对半分割,从而快速缩小查找范围。

二分搜索每次把搜索区域减少一半,时间复杂度为 O(logn)(n代表集合中元素的个数)。

二分搜索的基本步骤如下:

1.初始条件:将搜索范围设为数组的整个区间。
2.查找中间元素:计算当前区间的中间索引。
3.比较中间元素:将中间元素与目标值进行比较:

  • 如果中间元素等于目标值,查找成功,返回中间索引。
  • 如果中间元素小于目标值,将搜索范围缩小到右半部分。
  • 如果中间元素大于目标值,将搜索范围缩小到左半部分。

4.重复步骤 2 和 3,直到找到目标值或搜索范围为空。


在下图中为大家展示了二分搜索的过程:

二、代码实现

#include <iostream>
#include <vector>
using namespace std;int binarySearchRecursive(const vector<int>& arr, int left, int right, int target) 
{if (left <= right) {int mid = left + (right - left) / 2; if (arr[mid] == target) {return mid;}if (arr[mid] > target) {return binarySearchRecursive(arr, left, mid - 1, target);}return binarySearchRecursive(arr, mid + 1, right, target);}return -1;
}int main() 
{vector<int> arr = { 2, 3, 4, 10, 40 };int target = 10;int result = binarySearchRecursive(arr, 0, arr.size() - 1, target);if (result != -1) {cout << "元素在索引 " << result << " 处找到" << endl;}else {cout << "元素未找到" << endl;}return 0;
}

http://www.yayakq.cn/news/367262/

相关文章:

  • 设计网站栏目怎么建个人网站
  • 一家专门做打折的网站山东智慧团建官网
  • 抓好门户网站建设wordpress mysql 扩展
  • 青海中小企业网站建设大良网站建设机构
  • 网页代理访问网站之梦网站怎么做seo
  • delphi 网站开发仿卢松松博客wordpress
  • 哪个做砍价活动的网站好深圳旅游
  • 电子商务网站购物流程图微信开放平台怎么申请
  • 招聘网站做两份简历电子商务软文写作
  • 成都网站seo技术流程图在线制作免费
  • 广州市手机网站建设品牌成品视频直播软件推荐哪个好一点的
  • 专业网站推广的公司网站被降权后怎么办
  • 网站建设都有什么功能济宁网站建设公司怎么样
  • 济南网站搜索排名thinkphp网站开发技术
  • 网站运营托管方案开公司需要什么手续和证件
  • 三原做网站深圳网页设计公司有哪些
  • 景安备案网站站长统计是什么意思
  • 怎么开发手机网站phpcms中英文网站模板
  • 河南专业网站建设哪家好建网站为什么要租空间
  • 做网站是如何实施的做网站商城需要什么
  • 网站设计建议网络营销策略应遵循的原则
  • 网站建设公司理念区块链技术做网站
  • 重庆网站建设公司是什么意思樱花jsq30q211
  • 怎样破解网站后台密码网站开发设计心得
  • 深圳市龙华区沈阳网站建设seo优化
  • 海拉尔网站建设平台vs怎样建设新网站
  • iis怎么加载网站英文搜索网站
  • 自己做微信电影网站怎么做转短链接在线生成
  • 网站建设的搜索功能美仑-专门做服装的网站
  • 贸易网站源码企业官网制作公司