交换两个元素的方法


法一


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

法二

#define swap(a, b) ({\
    __typeof(a) temp = a;\
    a = b;\
    b = temp;\
})

法三

void swap3(int *a, int *b) {
    *a += *b;
    *b = *a - *b;
    *a -= *b;
    return ;
}

法四


void swap(type *a, type *b) {
    type temp = *a;
    *a = *b;
    *b = temp;
    return ;
}

法五

#define swap(a, b) {\
    a ^= b; b ^= a; a ^= b;\
}

法六

#define swap(a, b) {\
    a += b; b = a - b; a = a - b;\
}

法七

#define swap(a, b) {\
    a *= b; b = a / b; a = a / b;\
}

文章作者: Axieyun
版权声明: 本博客所有文章除特別声明外,均采用 CC BY 4.0 许可协议。转载请注明来源 Axieyun !
评论
评论
  目录