网站设计制做报价,app界面设计模板一套,wordpress获取首页地址,怎么样做网站编程书接上回......蓝桥杯算法日常|c\c常用竞赛函数总结备用-CSDN博客
目录
书接上回......https://blog.csdn.net/weixin_47011416/article/details/145290017 1、二分查找
2、lower_bound uper_bound
3、memset#xff08;#xff09;
函数原型
参数说明
返回值
常见用…书接上回......蓝桥杯算法日常|c\c常用竞赛函数总结备用-CSDN博客
目录
书接上回......https://blog.csdn.net/weixin_47011416/article/details/145290017 1、二分查找
2、lower_bound uper_bound
3、memset
函数原型
参数说明
返回值
常见用法
4、swap
5、reverse
6、unique 1、二分查找
vectorint numbers{1.3.7.9};
banary_search(numbers.begin(),numbers.end(),target);在已经排好序的序列中查找特定值返回bool值。
2、lower_bound uper_bound
vectorint v{1,5,2,7,9,2,10};sort(v.begin(),v.end());for(auto i:v)couti ;cout\n;cout(lower_bound(v.begin(),v.end(),8)-v.begin())\n;
lower_bound(start地址,end地址,x) 返回从开始到结束左闭右开中第一个大于等于x的元素的地址。利用地址-首地址下标得出下表的值。
upperbound(start地址,end地址,x) 返回左闭右开第一个大于x的元素的地址。
3、memset
头文件cstring用于将一段内存区域设置为指定的值。
函数原型
c复制代码
void *memset(void *s, int c, size_t n);
参数说明
s指向要填充的内存区域的指针。c要设置的值通常是一个无符号字符。n要被设置为该值的字节数。
返回值
该函数返回一个指向存储区 s 的指针。
常见用法 初始化数组可以使用 memset() 快速地将数组中的所有元素初始化为特定值例如将一个整数数组清零或设置为某个特定的初始值。初始化结构体对于结构体变量或结构体数组可以使用 memset() 将其内存空间初始化为特定值以便在后续使用中确保数据的一致性和安全性。清空内存区域通过将 c 设置为0memset() 可以用来清空一段内存区域即将所有字节设置为0。这在释放内存之前清理数据结构或避免内存泄漏时特别有用。
#includebits/stdc.h
int main(){
int a[5];
memset(a,0,sizeof(a));
for(int i0;i5;i)couta[i]\n;
return 0;
}
4、swap
功能用于交换两个对象的值。用法swap(a, b);其中 a 和 b 是要交换值的两个对象它们必须是相同的类型。可以用于交换任意种类的变量基本类型整数浮点和自定义类型结构体类对象等
5、reverse
功能用于反转一个序列的元素定义在 algorithm 头文件中。包括数组向量链表。语法template class BidirectionalIterator void reverse(BidirectionalIterator first, BidirectionalIterator last);参数first 和 last 用于指定要转换的数据范围 [first, last)。注意事项需要双向迭代器来工作所以可以与 std::vector、std::deque 和 std::list 之类的容器一起使用但不能用于 std::set 和 std::map 这样的容器因为它们的内部是有序的不能做反转操作。
6、unique
用于除去容器中相邻重复元素的函数必须相邻如果不相邻用sort排个序用法iterator unique(iterator it_1, iterator it_2);表示对容器中 [it_1, it_2) 范围的元素进行去重返回值是一个迭代器指向去重后容器中不重复序列的最后一个元素的下一个元素。返回指向去重后范围的尾后迭代器
7、pow
计算某数的n次方
double base 2.0; // 底数
int exponent 3; // 指数
double result pow(base, exponent); // 计算2