資料結構習題集(一)

2021-08-18 12:47:48 字數 911 閱讀 8036

a中存有n(

>

0)個整數,在不允許使用另外陣列的前提下,將每個整數迴圈向左移m(

≥0)個位置,即將

a中的資料由(a​

0​​a

​1​​

⋯a​n

−1​​

)變換為(a​

m​​⋯

a​n−

1​​a

​0​​

a​1​

​⋯a​

m−1​

​)(最前面的

m個數迴圈移至最後面的

m個位置)。如果還需要考慮程式移動資料的次數盡量少,要如何設計移動的方法?

輸入第1行給出正整數n(

≤100

)和整數m(

≥0);第2行給出

n個整數,其間以空格分隔。

在一行中輸出迴圈左移

m位以後的整數序列,之間用空格分隔,序列結尾不能有多餘空格。

8 3

1 2 3 4 5 6 7 8

4 5 6 7 8 1 2 3

str1,str2=input().split()

n=eval(str1)

m=eval(str2)

str_in = input('')

a= [int(n)for n in str_in.split()]

for j in range(m):

for i in range(1,n+1):

if i!=1:

a[i-2]=a[i-1]

else:

temp=a[i-1]

a[n-1]=temp

print(" ".join(str(i) for i in a))

資料結構習題集(二)

n項物品,大小分別為s 1 s 2 s i s n 其中s i 為滿足1 s i 10 0的整數。要把這些物品裝入到容量為100的一批箱子 序號1 n 中。裝箱方法是 對每項物品,順序掃瞄箱子,把該物品放入足以能夠容下它的第乙個箱子中。請寫乙個程式模擬這種裝箱過程,並輸出每個物品所在的箱子序號,以及...

資料結構習題集(七)

p,用除留餘數法定義的雜湊函式將關鍵字對映到長度為 p的雜湊表中。用線性探測法解決衝突。輸入第一行首先給出兩個正整數n 100 0 和p n的最小素數 分別為待插入的關鍵字總數 以及雜湊表的長度。第二行給出 n個整型關鍵字。數字間以空格分隔。在一行內輸出每個整型關鍵字在雜湊表中的位置。數字間以空格分...

資料結構習題集答案1

1.17 一直k階斐波那契序列的定義為 試編寫求k階斐波那契序列的第m項值的函式演算法,k和m均以值呼叫的形式在函式引數列表中出現。解法1 include 求norder階斐波那契數列的第nnumber項 int fibonacci int norder,int nnumber else if nn...