題目
問題 l: ds順序表之迴圈移位
時間限制:
1 sec 記憶體限制:
128 mb
提交:657 解決:
403[提交]
[狀態]
[討論版]
題目描述
順序表的移位是迴圈移位,例如順序表:1,2,3,4,5,6。如果左移1位,即原來的頭元素移動到末尾,其它元素向左移1位,變成2,3,4,5,6,1。同理,如果右移1位,即原來的尾元素移動到頭,其它元素向右移1位,變成6,1,2,3,4,5。以下是移位的多個例子:
原資料:1,2,3,4,5,6
左移3位:4,5,6,1,2,3,與原資料對比
右移4位:3,4,5,6,1,2,與原資料對比
請編寫程式實現順序表的迴圈移位操作
輸入第1行輸入n表示順序表包含的·n個資料
第2行輸入n個資料,資料是小於100的正整數
第3行輸入移動方向和移動的位數,左移方向為0,右移方向為1
第4行輸入移動方向和移動的位數,左移方向為0,右移方向為1
輸出第一行輸出建立後,順序表內的所有資料,資料之間用空格隔開
第二行輸出第一次移位操作後,順序表內的所有資料,資料之間用空格隔開
第三行輸出第二次移位操作後,順序表內的所有資料,資料之間用空格隔開
樣例輸入511
2233
445502
14樣例輸出
1122
3344
5533
4455
1122
4455
1122
33
**塊#include
using
namespace std;
intmain
(void)}
else
//左移num個等價於右移n-num個,右移操作更為方便,可以將元素暫存在陣列的第n個位置上。
}for
(i=0
; i) cout<<<
' ';
cout>pos>>num;
if(pos)
}else
}for
(i=0
; i) cout<<<
' ';
cout<}
DS順序表之迴圈移位
題目描述 順序表的移位是迴圈移位,例如順序表 1,2,3,4,5,6。如果左移1位,即原來的頭元素移動到末尾,其它元素向左移1位,變成2,3,4,5,6,1。同理,如果右移1位,即原來的尾元素移動到頭,其它元素向右移1位,變成6,1,2,3,4,5。以下是移位的多個例子 原資料 1,2,3,4,5,...
問題 D DS順序表之迴圈移位
問題 d ds順序表之迴圈移位 時間限制 1 sec 記憶體限制 128 mb 題目描述 順序表的移位是迴圈移位,例如順序表 1,2,3,4,5,6。如果左移1位,即原來的頭元素移動到末尾,其它元素向左移1位,變成2,3,4,5,6,1。同理,如果右移1位,即原來的尾元素移動到頭,其它元素向右移1位...
DS之順序表實現亂序輸入順序輸出
順序表的例項有很多,在學其他的程式語言時,肯定都學過要求輸入一串亂序的數字,要求進行排序,實現公升序或降序輸出。今天就來用順序表實現亂序輸入,順序輸出 公升序 實現上述的功能需要用到的順序表的基本操作有0基本操作前的準備,1初始化順序表,6向順序表插入資料元素。自己只需寫乙個排序的函式,排序函式的 ...