0.交换两数(不使用额外变量)
//注:在使用异或交换两元素时,两元素不能在同一内存中
void Swap(int arr[], int i, int j)
{
if (i == j) return;//不能在同一内存中,若在同一内存中,最后值会被0
arr[i] = arr[i]^arr[j];
arr[j] = arr[i]^arr[j];
arr[i] = arr[i]^arr[j];
}
//注:在使用异或交换两元素时,两元素不能在同一内存中
void Swap(int arr[], int i, int j)
{
if (i == j) return;//不能在同一内存中,若在同一内存中,最后值会被0
arr[i] = arr[i]^arr[j];
arr[j] = arr[i]^arr[j];
arr[i] = arr[i]^arr[j];
}