交換関数swapの3つの実現方法


本稿では,2つの数の交換を3つの方式で実現し,それぞれ1補助変数tempを用いたswap関数,2加減法を用いたswap関数,3異或演算を用いたswap関数である.
テーマに直行します.
1、補助変数tempによるswap関数
I、参照タイプパラメータ
void swap(int &a, int &b) //      
{
	int temp; //    
	temp = a;
	a = b;
	b = temp;	
}

Ⅱ、ポインタタイプパラメータ
void swap(int *a, int *b)
{
	int temp;
	temp = *a;
	*a = *b;
	*b = temp;	
}

2、加減法を採用したswap関数
void swap(int &a, int &b)
{
	a = a + b;
	b = a - b;
	a = a - b;
}

3、異或演算を用いたswap関数
void swap(int &a, int &b)
{
	a = a ^ b;
	b = a ^ b;
	a = a ^ b;
}