題目:已知在以為陣列a[m+n]中依次存放兩個線性表(a1,a2...,am)和(b1,b2,...,bn),現需要將兩個線性表互換位置,b在前,a在後
分析:要想達到這樣的效果,我們可以進行三次逆置。第一次對整個陣列a進行逆置,然後對前面的b進行逆置,最後對後面的a進行逆置,這樣便達到了效果。
**:
#include void reverse(int *arr,int from,int to)
int tmp;
for (int i = from; i <= (from+to)/2;i++)
}int main() ;//也可以由使用者輸入陣列值
reverse(arr,0,10);
reverse(arr, 0, 5);//因為下標從0開始,所以相應的比個數小一
reverse(arr, 6, 10);
for (int i = 0; i < 11; i++) printf("%d ",arr[i]);
return 0;
}
永遠相信美好的事情即將發生! 共享陣列原地逆置
偶然在一本書上看到這樣一道題覺得聽一意思的就拿來做了一下,題目是這樣設定的 在已知一維陣列a m n 中一次存放兩個線性表 a1,a2,a3,a4 am b1,b2,b3 bn 試寫出乙個函式將兩個順序表位置互換,即由 a,1,a2,a3,a4.am,b1,b2,b3.bn 轉換成 b1,b2,b3...
陣列元素原地逆置
最簡單的利用陣列實現 includeusing namespace std const int arraysize 30 int main for int i 0 i 用結構體實現 include includeusing namespace std define listsize 30 函式狀態碼...
C 陣列元素逆置練習
在學習了陣列順序排序後碰到需要將陣列內的元素排序顛倒過來的練習,雖然思路比較簡單,不過通過左右夾逼的方法還是挺常用的,在此作為排序拓展記錄。先給自己出道題目,將中的元素逆置,即 這樣我們需要先知道陣列長度以提取下標進行操作,可以通過 sizeof arr sizeof arrtype 來獲取陣列的長...