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

做后期的网站有哪些关于网络推广的方法

做后期的网站有哪些,关于网络推广的方法,wordpress手机版 mp3,wordpress 杂志如果要你在一个升序序列中查找一个值的位置&#xff0c;你是否还会傻乎乎的用下面这个 O ( n ) \mathcal O(n) O(n) 的代码暴力查找&#xff0c;如果是&#xff0c;我告诉你&#xff0c;其实根本不用这么做。 int find(int a[],int n,int k) {for(int i0;i<n;i) if(a[i]k)…

如果要你在一个升序序列中查找一个值的位置,你是否还会傻乎乎的用下面这个 O ( n ) \mathcal O(n) O(n) 的代码暴力查找,如果是,我告诉你,其实根本不用这么做。

int find(int a[],int n,int k) {for(int i=0;i<n;++i) if(a[i]==k) return i;
}

猜数字这个游戏大家都玩过吧,这里介绍以下规则:

  1. 一名玩家在一个范围内想出一个数。
  2. 这名玩家告诉其他玩家他所想的范围。
  3. 其他玩家在这个范围内猜数,若:
    • 猜中了:该玩家获胜
    • 没猜中:根据该玩家猜的数缩小范围,然后接着进行操作 2。对于缩小范围,设初始范围为 l ∼ y l\sim y ly,要猜的数为 n n n,猜的数位 n n n,若:
      • m < n m<n m<n,将范围缩小至 m ∼ r m\sim r mr
      • m > n m>n m>n,将范围缩小至 l ∼ m l\sim m lm

显然,想要最快猜到该数,就需要采用折半的方法去猜,每次都猜这个范围的中间数。二分查找也是一样,对于每一次查找,都判断中间的数与要找的数的大小关系,然后采取对应的操作。

需要注意的是,二分查找需要保证序列是升序的。

这里放个代码:

//循环版
int find(int a[],int n,int k) {int l=0,r=n-1;while(l<=r) {int mid=(l+r)/2;if(a[mid]>k) r=mid-1;else if(a[mid]<k) l=mid+1;else if(a[mid]==k) return mid;}return -1;
}
//递归版
int find(int a[],int n,int k,int l,int r) {if(l>r) return -1;int mid=(l+r)/2;if(a[mid]>k) return find(a,n,k,l,mid-1);else if(a[mid]<k) return find(a,n,k,mid+1,r);else if(a[mid]==k) return mid;
}

练习题:洛谷 link

http://www.zhongyajixie.com/news/26944.html

相关文章:

  • 温州网站建设公司百度手机助手安卓版下载
  • wordpress 站内资讯淘宝交易指数换算工具
  • wordpress弹窗登入搜索引擎优化是做什么的
  • 微信小程序哪里找网站优化检测
  • 独立电商网站seo百度移动端模拟点击排名
  • asp.net网站建设教程北京seo优化方案
  • 单县网站定制可以直接进入网站的正能量
  • 网站设计公司哪家比较好百度官网首页入口
  • 网站开源源码seo网站优化培训怎么样
  • 专门做酒的网站seo导航站
  • 网站建设的讲话稿宁德市蕉城区
  • 动态网站制作视频教程seo是什么意思为什么要做seo
  • 个人做外贸接订单网站google chrome官网入口
  • 河北移动端网站制作企业网站的推广方式和手段有哪些
  • 给一个网站做需求分析网站数据
  • 泛华建设集团网站新闻最新消息10条
  • 高校网站群管理系统百度搜索引擎网址格式
  • 个人餐饮网站模板今日热榜官网
  • 网站推广员工作咋样软文网官网
  • 进度插件 wordpress网站seo优化免费
  • 优秀网站建设设计seo是搜索引擎吗
  • 龙岗做网站建设网站诊断工具
  • 做网站租服务器需要多少钱百度非企渠道开户
  • 搭建公司网站费用简述在线推广网站的方法
  • 园林设计公司网站seo网站优化详解
  • 网站建设与管理模拟试卷一全网推广推荐
  • 做图软件ps下载网站建材企业网站推广方案
  • 如何用css做网站模板建站公司
  • 大型网站都怎么做推广北京搜索优化排名公司
  • 如何用源码做网站企业宣传推广方案