C/C++教程

简单常用模板c++

本文主要是介绍简单常用模板c++,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

新手,代码可能有点问题,欢迎指错

1排序
void paixu(int* a, int n)
{
    for (int i = 0; i < n; i++)
    {
        for (int j = i + 1; j < n; j++)
        {
            if (a[i] < a[j])//从大到小
            {
                int item = a[i];
                a[i] = a[j];
                a[j] = item;
            }
        }
    }
}
最大公约数

int gcd(int a, int b)
{
    return b == 0 ? a : gcd(b, a % b);
}

进制转化

需要加头文件
#include<iomanip>

输出
cout << setbase(n) << a << endl;

质数

bool Prime(int a)
{
    if (a == 2)
        return true;
    for (int i = 2;i < a; i++)
        if (a % i == 0)
            return false;
    return true;
}

 二分法查找

int erfenfa(int* a, int L, int R, int target)
{
    while (L <= R)
    {
        int mid = L + (R- L) / 2;
        if (a[mid] == target)
            return mid;
        if (a[mid] > target)
            R = mid - 1;
        else
            L = L + 1;
    }
    return -1;//无
}

//

int lcm(int a, int b)
{
    return a / gcd(a, b) * b;
}

交换

void Swap(int& x, int& y)
{
    int tmp = x;
    x = y;
    y = tmp;
}

这篇关于简单常用模板c++的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!