好了。我們這一次要用棧。
棧是先進後出的。如果我們把一些元素(在這裡況且設為q)放入棧,然後不停地出棧,直到棧空了為止。出來的順序一定是反的。
所以呢?可以利用本性質來進行解決。
第一步:定義「棧」這種資料型別(我是用c語言實現的,c++中有stack,可以少打幾行**)
typedef struct stack
revstack;
revstack stack;
第二步:寫最基本的棧操作函式:
1.初始化棧。
void init()
2. 進棧與出棧:
void pushtostack(int pushing)
int popfromstack()
3. 反**
void reversebystack()
memset(array,0,sizeof(array));
for (int i = 0;i < 10;++i)array[i] = popfromstack();
for (int i = 0;i < 10;++i)printf("%d ",array[i]);
}
好了,大功告成。
Java中陣列的反轉
陣列反轉就是將兩個對稱的位置的元素進行交換,在這裡提供兩種實現方式 思路一 如下圖所示 1.對稱交換,所以需要兩個變數來記錄對稱的兩個位置 2.一組交換完後,左邊的需要進行加1,右邊的就需要進行減1 3.如果是奇數的話,當兩個位置相等 min max 就不會交換,4.如果是偶數的話,當兩個數擦肩而過...
陣列 陣列反轉,排序
using system using system.collections.generic using system.linq using system.text namespace 資料反轉 string s for int i 0 i strallay.length 2 i 是因為經過 將陣列的...
陣列的反轉
題目 給定乙個 32 位有符號整數,將整數中的數字進行反轉。示例1 輸入 123 輸出 321 示例2 輸入 123 輸出 321 原理 利用棧的先進後出的原理,先將乙個乙個數壓入棧中,出棧同時組合成所需結果。注意 範圍限制以及符號判定等細節 include include include incl...