swap()函数实现

需要引入中间变量

第一种方法:

void swap(int a, int b)
{
    int tmp = a;
    a = b;
    b = tmp;
}
第二种方法(指针):

void swap(int *a, int *b)
{
    int tmp = *a;
    *a = *b;
    *b = tmp;
}

不需要引入中间变量


第三种方法:

void swap(int a, int b)
{
    a = a + b;
    b = a - b;
    a = a - b;
}

第四种方法(位操作):
void swap(int a, int b)
{
    a = a ^ b;
    b = a ^ b;
    a = a ^ b;
}


第五种方法(C++引用)

void swap(int &a, int &b)
{
    int tmp = a;
    a = b;
    b = tmp;
}


你可能感兴趣的:(swap()函数实现)