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

跳蛋塞逼做多的视频网站青岛seo建站

跳蛋塞逼做多的视频网站,青岛seo建站,网络舆情监测中心具体做什么,地推公司一.sort排序 快排的改进算法&#xff0c;评价复杂度为(nlogn). 1.用法 sort(起始地址&#xff0c;结束地址下一位&#xff0c;*比较函数) [起始地址&#xff0c;结束地址) (左开右闭) #include<bits/stdc.h> using namespace std; int main() {//sortvector<int&g…

一.sort排序

快排的改进算法,评价复杂度为(nlogn).

1.用法

sort(起始地址,结束地址下一位,*比较函数) [起始地址,结束地址) (左开右闭)

#include<bits/stdc++.h>
using namespace std;
int main()
{//sortvector<int> v;int x;while (cin >> x) v.push_back(x);sort(v.begin(), v.end());for (int num : v) cout << num << ' ';//范围forcout << endl;}

2.自定义函数

sort没有默认参数时,默认为升序,如果想要改为降序,就需要自己写个函数,然后利用回调函数实现。

如果想要小于,参数为(int a,int b,cmp)返回值 return a>b 代表第一个数小于第二个数 即非升序

#include<bits/stdc++.h>
using namespace std;
bool cmp(int a, int b)
{return a > b;
}
int main()
{//sortvector<int> v;int x;while (cin >> x) v.push_back(x);//使用while(cin>>x) 按ctrl+z停止加回车停止输入sort(v.begin(), v.end(),cmp);for (int num : v) cout << num << ' ';//范围forcout << endl;}

 

3.练习

对数组升序然后再降序。

#include<bits/stdc++.h>
using namespace std;
int main()
{//sortvector<int> v;int x;while (cin >> x) v.push_back(x);//使用while(cin>>x) 按ctrl+z停止加回车停止输入sort(v.begin(), v.end());for (int num : v) cout << num << ' ';//范围forcout << endl;for (int i = v.size()-1; i >= 0; i--) cout << v[i] << ' ';cout << endl;}

二.memset()

void*(void* p,int value,size_t num)用于初始化内存块的值,p是要填充的内存块,value为要设置的值(8位二进制数),num为字节数。

1.适用范围

memset是一个字节字节进行初始化的,所以如果你是一个整数比如1的话,那他的内存存储就会是00000001000000010000000100000001结果就会是一个很大的数,而不是每一个数都为1,但如是初始化一个字符数组,那字符数组每个字符都是1个字节那就刚刚好整数只能是-1或0

字符数组

#include<bits/stdc++.h>
using namespace std;
int main()
{char a[4];memset(a, '1', sizeof(a));//cout << a;//因为一开始没有对char初始化没有斜杠零 所以后面会输出烫烫for (int i = 0; i < 4; i++) cout << a[i];}

整型数组出现的情况(只能初始化为0和-1)

#include<bits/stdc++.h>
using namespace std;
int main()
{int a[4];memset(a, 1, sizeof(a));//cout << a;//因为一开始没有对char初始化没有斜杠零 所以后面会输出烫烫for (int i = 0; i < 4; i++) cout << a[i]<<' ';}

三.swap()

swap(T &a,T &b);

交换两个变量的值

int a=10;

int b=20;

swap(a,b);

四.reserve() 

用于反转容器元素,reverse(first,last)[first,last),左闭右开

using namespace std;
int main()
{vector<int> v;int x;while (cin >> x) v.push_back(x);for (int num : v) cout << num << ' ';cout << endl;reverse(v.begin(), v.end());for (int num : v) cout << num<<' ';}

五.unique() 去重函数(唯一函数)

unique(first,last)[first,last)函数接受两参数:

first:指向要去重的第一个元素的迭代器;

endlast:最后一个元素的下一个

返回值返回去重后最后一个元素的下一个迭代器比如122333排序完为123233,返回值就是123后的三的地址,之后使用erase就可以后面的那些多余元素。

#include<bits/stdc++.h>
using namespace std;
int main()
{vector<int> v = {1,2,2,3,3,3,4,4,4,4};auto it=unique(v.begin(), v.end());for (int num : v) cout << num << ' ';cout << endl;v.erase(it, v.end());for (int num : v) cout << num<<' ';}

六.next_permutation()和prev_permutation函数

 next_permutation()和prev_permutation函数分别对应生成当前序列的下一个排列、上一个排列。next_permutation他按照字典序(即从大到小排序)对序列进行重新排列,如果存在下一个排列,则将当前序列改为下一个排序,并返回true,如果当前为最后一个排列,则改为第一个排列,并且返回false,prev_permutation及对应上一个排列,存在返回true,反之,改为第一个序列,并返回false。

练习

输出1234的所有全排列

#include<bits/stdc++.h>
using namespace std;
int main()
{vector<int> v = {1,2,3,4};bool flag = true;while (flag){for (int num : v) cout << num;cout << endl;flag = next_permutation(v.begin(), v.end());}//最后一个序列继续的话变为第一个序列cout << endl;//多空一行好分清for (int num : v) cout << num;cout << endl;}

七.binary_search和lower_bound和upper_bound

1.binary_search

binary_search是c++的标准库函数,通过二分查找算法(博客里有单独的一个讲解)来确定是否存在目标元素,返回值为bool

三个参数,第一个左闭右开[left,right),最后一个参数为目标值

#include<bits/stdc++.h>
using namespace std;
int main()
{   //binary_searchvector<int> v = {1,2,3,4};int target = 4;bool found = binary_search(v.begin(), v.end(), target);if (found) cout << "找到了" << endl;else cout << "没找到";
}

 

2.lower_boundn和upper_bound

lower_bound(first,end,x),区间仍为左闭右开,返回值为返回第一个大于等于x的元素地址(不是下标)。

upper_bound(first,end,x),区间也是左闭右开,返回值为第一个大于x的元素地址

由于返回值是一个地址,想要得到下标,就必须减去首地址(v.begin())

解释一下他们名字的含义,lower_bound名为下界,upper_bound为上界,当x为7时候,如下图

例子:

找第一个大于等于8的位置 

#include<bits/stdc++.h>
using namespace std;
int main()
{   //binary_searchvector<int> v = {8,9,5,44,3};//二分查找的前提是单调,先进行排序sort(v.begin(), v.end());cout << (lower_bound(v.begin(), v.end(), 8)-v.begin());
}

 

http://www.mnyf.cn/news/43040.html

相关文章:

  • thinkphp做的上线网站怎样创建自己的电商平台
  • wordpress上传主机广州seo公司如何
  • 青岛本地招聘网站交换友情链接的渠道有哪些
  • wordpress安装好怎么设置密码北京seo优化费用
  • 网络规划设计师高级证书南京seo公司
  • adobe 做网站媒体邀约
  • 360建站工具网站排名优化外包
  • 微商新零售系统济南网站优化公司哪家好
  • 百姓网站外推广怎么做深圳优化公司统高粱seo
  • 商城网站建设策划书google官方下载安装
  • 电脑编程用什么软件关键词优化工具有哪些
  • 郑州小程序开发多少钱5g网络优化
  • 徐州网站建设哪家好安卓优化大师老版本下载
  • 子网页怎么做seo网络营销公司
  • 怎样学好网站开发黑帽seo工具
  • 昆明如何做百度的网站优化落实新十条措施
  • 做网站美工未来规划百度搜索优化怎么做
  • wordpress文件上传大小重庆旅游seo整站优化
  • 辽宁政府招标网seo是什么化学名称
  • 免费的网站模板万能搜索 引擎
  • 北京私人做网站搜索引擎排名优化公司
  • 做企业网站的要点百度搜索引擎广告投放
  • 网站知识介绍河南seo推广
  • 住房和城乡建设部办公厅网站新冠疫苗接种最新消息
  • 电商网站优化方案百度竞价点击神器奔奔
  • 时时彩网站建设武汉大学人民医院
  • 国外网站视频播放器广州头条新闻最新
  • 网站信息做参考文献微商如何引流与推广
  • 政府网站开发维护合同个人网站设计图片
  • 网站代理建设黑帽seo培训大神