天天看點

将數組中的兩個線性表(分别有m和n個元素)互換位置,每個線性表内部個元素的相對位置關系不變

将數組中的兩個線性表(分别有m和n個元素)互換位置,每個線性表内部個元素的相對位置關系不變

int main()
{
	DataType arr[m + n];
	InitArr(arr,m+n);
	int i = 0, j = m;
	while (i < (m-1)/2)//先逆置第一個數組中的m個元素
	{
		DataType temp = arr[i];
		arr[i] = arr[m - 1 - i];
		arr[m - 1 - i] = temp;
		i++;
	}
	while (j < (2*m+n-1)/2)//再逆置第二個數組中的n個元素
	{
		DataType temp = arr[j];
		arr[j] = arr[2*m + n - 1 - j];
		arr[2*m + n - 1 - j] = temp;
		j++;
	}
	for (int i = 0; i < (m + n)/2; i++)//最後全部逆置
	{
		DataType temp = arr[i];
		arr[i] = arr[m + n -1 - i];
		arr[m + n -1 - i] = temp;
	}
	cout << endl;
	system("pause");
	return 0;
}
           

繼續閱讀