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

算法分析--分治--1.二分搜索

难题被逐层拆解,每一次的拆解都使它变得更为简单。分而治之揭示了一个重要的事实:从简单做起,一切都不再复杂。

1.1 分治算法

分治 是一种非常常见的算法策略。
分:将整个问题划分为多个小问题。
治:从小问题开始,自底至顶将子问题合并成原来的问题。
image

1.2 分治的效率

分治往往可以提高效率。

  • 降低时间复杂度
    冒泡排序为例,处理长度为n的数组需要O(n^2),但是将其划分为两个小数组就只要O(n +(n/2)^2 +(n/2)^2 + n )
  • 并行操作
    子问题之间是相互独立的,利于并行操作。、

1.3 分治之二分搜索

  • 题目描述
    给定一个包含 n 个元素有序的(升序)整型数组 nums 和一个目标值 target,要求实现搜索 nums 中的 target,如果目标值存在返回下标,否则返回 -1。题目保证nums中的所有元素都不重复。
#include<iostream>
using namespace std;
int find(int num[],int tar,int n){int l=0,r=n-1;while(l<=r){int mid=(l+r)/2;if(num[mid]==tar) return mid;else if(num[mid]<tar) l=mid+1;else r=mid-1;}return -1;
}
int main(){int n;cin>>n;int num[n];for(int i=0;i<n;i++){cin>>num[i];}int tar; cin>>tar;cout<<find(num,tar,n);return 0; 
}
http://www.sczhlp.com/news/236063/

相关文章:

  • 广东哪里网站建设丽水品牌网站建设
  • 淘宝网 商务网站建设目的永兴县网站建设公司哪家好
  • 做一个什么网站好网站怎么做的有创意
  • 厦门建设局网站工程师评审石家庄网站建设专家
  • 小企业网站建设费用一年wordpress后台进去
  • 阿里巴巴可以做网站吗网站源码html
  • 哪个网站做海报比较好php网站数据迁移
  • 河北省网络科技网站上海服装贸易公司排名
  • 企业网站如何去做优化长沙房产网站
  • asp网站安装南通做网站ntwsd
  • 网站建设要在哪学重庆永川微网站建设
  • 天天爱天天做网站网页设计的工作职位
  • 手机可以建立网站吗公司网站设计制作开发方案
  • 营销网站的建立洛阳网站建设联系方式
  • 找人建设一个网站多少钱编辑网页用什么软件
  • 建设银行网站怎么查开户行河南建设网站官网
  • 网站设计专业就业方向有哪些建筑设计方案网站
  • 手机如果做网站临沂360网站建设推广
  • 清风室内设计培训学校官网seo搜索引擎是什么意思
  • 免费的网站域名查询学校网站制作模板
  • 南昌网站建站怎样同步wordpress
  • 大连网站制作机构上海企业信用信息公示系统(上海)
  • 厦门石材网站建设电商网站推广方案
  • 做外贸需要浏览外国网站安徽人防工程建设网站
  • 百度竞价网站备案建设企业网站的常见成本有哪些
  • 计算机网络编程技术电脑优化软件哪个好用
  • paste
  • window[-INPUT-] 还有哪些属性或方法
  • DeepSeek-DSA讲解
  • 网站开速度 流失用二级域名做的网站算新站吗