目录

一、算法函数

1.swap:交换两个变量的值。

2.sort:给一个数组排序。

 3.reverse:反转一个序列的顺序

4.unique:消除数组的相同重复元素

5.gcd:最大公约数

lcm:最小公倍数

 6. lower_bound:寻找≥x的第一个元素的位置;

upper_bound:寻找>x的第一个元素的位置。

二、数学函数:

1.基本数学运算

2.取整函数

3.其他函数



一、算法函数

1.swap:交换两个变量的值。

#include<bits/stdc++.h>
using namespace std;
int main()
{
	int a=1,b=2;
	cout<<a<<" "<<b<<endl;
	swap(a,b);
	cout<<a<<" "<<b<<endl;
} 

  

2.sort:给一个数组排序。

#include<bits/stdc++.h>
using namespace std;
bool cmp(int a,int b)
{
	return a>b;
}
int main()
{
	int a[5]={3,1,4,2,6};
	//从小到大排序 
	sort(a,a+5);
	for(int i=0;i<5;i++)
	cout<<a[i]<<" ";
	cout<<endl;
	
	//从大到小排序 
	sort(a,a+5,cmp);
	for(int i=0;i<5;i++)
	cout<<a[i]<<" ";
	
	return 0; 
#include<bits/stdc++.h>
using namespace std;
int main() 
{
    vector<int> a{3, 1, 4, 2, 6};

    // 从小到大排序
    sort(a.begin(), a.end());
    for(int i = 0; i < a.size(); i++)
        cout << a[i] << " ";
    cout << endl;

    // 从大到小排序
    sort(a.begin(), a.end(), greater<int>());
    for(int i = 0; i < a.size(); i++)
        cout << a[i] << " ";
    cout << endl;

    return 0;
}

   

 3.reverse:反转一个序列的顺序

#include<bits/stdc++.h>
using namespace std;
int main() 
{
    vector<int> a{0,1,2,3,4,6};

    reserse(a.begin(),a.end());
    for(auto num:a)
    cout<<ele<<" ";
    cout<<endl;
    
    reverse(a.begin()+2,a.begin()+4);
    for(auto num:a)
    cout<<num<<" ";
    cout<<endl;
    
    return 0;
}

  

4.unique:消除数组的相同重复元素

有效数据缩短(可结合erase去重)

#include<bits/stdc++.h>
using namespace std;
int main() 
{
	vector<int> a{1,2,1,4,5,4,4};
	sort(a.begin(),a.end());
	a.erase(unique(a.begin(),a.end()),a.end());
	for(auto num:a)
	cout<<num<<" ";
	 
    return 0;
}

 

5.gcd:最大公约数

lcm:最小公倍数

#include<bits/stdc++.h>
#include<numeric> //这两个函数的使用需要这个头文件
using namespace std;
int main() 
{
    int x = gcd(4, 3);
    int y = lcm(4, 3);
    cout << x << " " << y;

    return 0;
}

 6. lower_bound:寻找≥x的第一个元素的位置;

upper_bound:寻找>x的第一个元素的位置。

#include<bits/stdc++.h>
using namespace std;
int main() 
{
    vector<int> a{0,1,2,3,4,6};

    int pos1=lower_bound(a.begin(),a.end(),3)-a.begin();
    cout<<pos1<<endl;
    
    int pos2=upper_bound(a.begin(),a.end(),3)-a.begin();
    cout<<pos2<<endl;
    
    return 0;
}

 

7._itoa:十进制转任意进制

#include <bits/stdc++.h>
using namespace std;

int main() {
	int a = 10;
	char b[100];
	_itoa(a, b, 2);//括号里面的分别为要转换的进制数,转换后的结果,目标进制
	cout << b;
	return 0;
}

二、数学函数:

1.基本数学运算

  • abs(x):返回 x 的绝对值(适用于整数)。

  • fabs(x):返回 x 的绝对值(适用于浮点数)。

  • sqrt(x):返回 x 的平方根。

  • pow(x, y):返回 x 的 y 次方。

  • exp(x):返回 e 的 x 次方。

  • log(x):返回 x 的自然对数(以 e 为底)。

  • log10(x):返回 x 的常用对数(以 10 为底)。

2.取整函数

  • ceil(x):返回大于或等于 x 的最小整数(向上取整)。ceil(1.0*a/b)可代替为(a+b-1)/b

  • floor(x):返回小于或等于 x 的最大整数(向下取整)。floor(1.0*a/b)可代替为a/b

  • round(x):返回 x 的四舍五入值。

3.其他函数

  • fmod(x, y):返回 x 除以 y 的余数(适用于浮点数)。

  • max(x, y):返回 x 和 y 中的最大值。

  • min(x, y):返回 x 和 y 中的最小值。 

​
#include<bits/stdc++.h>
using namespace std;
int main() 
{
    //求余(取模)
    cout<<fmod(9,4)<<endl;

	//两个数找最小值 
    cout<<min(1,2)<<endl;
    
    //三个数找最小值
	cout<<min(min(1,2),3)<<endl;
	cout<<min({1,2,3})<<endl; 
	
	//两个数找最大值
	cout<<max(1,2)<<endl;
	
	//三个数找最大值
	cout<<max(max(1,2),3)<<endl;
	cout<<max({1,2,3})<<endl;
	 
    return 0;
}

​

 

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐