DS順序表之迴圈移位

2021-10-12 12:28:51 字數 1180 閱讀 6506

題目

問題 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向順序表插入資料元素。自己只需寫乙個排序的函式,排序函式的 ...