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

做众筹的网站有几个球队世界排名榜

做众筹的网站有几个,球队世界排名榜,wordpress 多说评论,网站外包要花多少钱目录 二分查找 基本思想 几种情况汇总 一。严格递增序列 1.查找本身 2.查找第一个大于等于自己的 3.查找第一个大于自己的 4.严格递减序列 二。有重复元素 1.取其中第一个出现的 2.取其中最后一个出现的 二分查找 基本思想 几种情况汇总 一。严格递增序列 1.查找本身…

目录

二分查找 基本思想

 几种情况汇总

一。严格递增序列

1.查找本身

2.查找第一个大于等于自己的 

3.查找第一个大于自己的

4.严格递减序列

二。有重复元素

1.取其中第一个出现的

2.取其中最后一个出现的


二分查找 基本思想

 几种情况汇总

一。严格递增序列

1.查找本身

#include <iostream>
#include <vector>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1000002;
int n,x; 
int num[N];
int mid;
int bis(int num[],int left,int right,int x)
{while(left<=right){mid=left+(right-left)/2;if(num[mid]>x) right=mid-1;if(num[mid]<x) left=mid+1;if(num[mid]==x){for(int i=mid;i>0;i--)if(num[i]==x&&num[i-1]!=x) return i;}}return -1;
}
int main()
{scanf("%d %d",&n,&x);for(int i=0;i<n;i++) scanf("%d",&num[i]);printf("%d",bis(num,0,n-1,x));}

2.查找第一个大于等于自己的 

#include <iostream>
#include <vector>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1000002;
int n,x; 
int num[N];
int mid;
int bis(int num[],int left,int right,int x)
{while(left<right){mid=left+(right-left)/2;if(num[mid]>x||num[mid]==x) right=mid;if(num[mid]<x) left=mid+1;}if(num[left]>=x) return left;else return left+1;
}
int main()
{scanf("%d %d",&n,&x);for(int i=0;i<n;i++) scanf("%d",&num[i]);printf("%d",bis(num,0,n-1,x));}

3.查找第一个大于自己的

#include <iostream>
#include <vector>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1000002;
int n,x; 
int num[N];
int mid;
int bis(int num[],int left,int right,int x)
{while(left<right){mid=left+(right-left)/2;if(num[mid]>x) right=mid;if(num[mid]<x||num[mid]==x) left=mid+1;}if(num[left]>x) return left;else return left+1;
}
int main()
{scanf("%d %d",&n,&x);for(int i=0;i<n;i++) scanf("%d",&num[i]);printf("%d",bis(num,0,n-1,x));}

4.严格递减序列

#include <iostream>
#include <vector>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1000002;
int n,x; 
int num[N];
int mid;
int bis(int num[],int left,int right,int x)
{while(left<=right){mid=left+(right-left)/2;if(num[mid]>x) left=mid+1;if(num[mid]<x) right=mid-1;if(num[mid]==x) return mid;}return -1;
}
int main()
{scanf("%d %d",&n,&x);for(int i=0;i<n;i++) scanf("%d",&num[i]);printf("%d",bis(num,0,n-1,x));}

二。有重复元素

1.取其中第一个出现的

#include <iostream>
#include <vector>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1000002;
int n,x; 
int num[N];
int mid;
int bis(int num[],int left,int right,int x)
{while(left<=right){mid=left+(right-left)/2;if(num[mid]>x) right=mid-1;if(num[mid]<x) left=mid+1;if(num[mid]==x){for(int i=mid;i>0;i--)if(num[i]==x&&num[i-1]!=x) return i;return 0;}}return -1;
}
int main()
{scanf("%d %d",&n,&x);for(int i=0;i<n;i++) scanf("%d",&num[i]);printf("%d",bis(num,0,n-1,x));}

2.取其中最后一个出现的

#include <iostream>
#include <vector>
#include <cmath>
#include <string>
#include <cstring>
#include <algorithm>
using namespace std;
const int N=1000002;
int n,x; 
int num[N];
int mid;
int bis(int num[],int left,int right,int x)
{while(left<=right){mid=left+(right-left)/2;if(num[mid]>x) right=mid-1;if(num[mid]<x) left=mid+1;if(num[mid]==x){for(int i=mid;i>0;i--)if(num[i]==x&&num[i-1]!=x) return i;return 0;}}return -1;
}
int main()
{scanf("%d %d",&n,&x);for(int i=0;i<n;i++) scanf("%d",&num[i]);printf("%d",bis(num,0,n-1,x));}

http://www.khdw.cn/news/40000.html

相关文章:

  • net实用网站开发网络软文是什么意思
  • 宝安做棋牌网站建设成品在线视频免费入口
  • 自己公司做公益网站怎么弄seo软件视频教程
  • 织梦网站后台默认登陆路径企业产品推广策划方案
  • 设计网站高级感百度开放云平台
  • 网站每年服务费seo优化一般包括哪些内容
  • 做公司网站哪里好舆情危机公关公司
  • html5做网站链接东莞seo托管
  • 应用小程序定制开发杭州网站seo价格
  • 网站外链接如何做谈谈你对seo概念的理解
  • 品物设计集团seo网站搜索优化
  • 国外优秀网站欣赏网站制作优化
  • 不显示修改的wordpressseo的最终是为了达到
  • 网站开发 集成包企业网站推广方案策划
  • .net网站做增删改怎么做网站推广多少钱
  • 深圳做商城网站建设关键词优化包含
  • 如何做网站测试还有哪些平台能免费营销产品
  • 做网站的详细步骤百度指数大数据
  • 网站手机站怎么做在线磁力搜索引擎
  • 重生做门户网站的小说百度热搜榜排名今日p2p
  • 昆明网站做的好的公司哪家好在线营销推广
  • 做有支付系统的网站一般需要多少钱沈阳专业seo排名优化公司
  • 建设部网站事故快报引流推广是什么意思
  • 成立公司注意事项辽宁seo推广
  • 杭州哪家做网站比较好重庆自动seo
  • 湖北省建设用地预审网站晚上偷偷看b站软件推荐
  • 连云港建网站网络销售平台有哪些
  • 南京电商网站建设公司排名新网站怎么做优化
  • 建设银行u盾官方网站首页自己做网站需要什么条件
  • 手机上的网站是怎么做的百度浏览器广告怎么投放