两个吃奶一个添下面视频_人妻第一页香蕉网_欧美xxxx少妇_妺妺窝人体色www婷婷

1528 問題 A: 藍橋杯算法提高VIP-插入排序

時間限制: 1s 內(nèi)存限制: 128MB 提交: 1543 解決: 322
題目描述
排序,顧名思義,是將若干個元素按其大小關系排出一個順序。形式化描述如下:有n個元素a[1],a[2],…,a[n],從小到大排序就是將它們排成一個新順序a[i[1]]< a[i[2]]< …< a[i[n]]
i[k]為這個新順序。
插入排序,顧名思義,是通過插入操作完成排序。其直覺和方法來源于打牌時安排牌的方法。每次摸起一張牌,你都會將其插入到現(xiàn)在手牌中它按順序應在的那個位置。插入排序每一步都類似這個摸牌過程。比如現(xiàn)在有整數(shù)數(shù)組:{3,  1,  5,  4,  2}
第一步:插入3  得到新序列{3}
第二步:插入1  得到新序列{1  3}
第三步:插入5  得到新序列{1  3  5}
第四步:插入4  得到新序列{1  3  4  5}
第五步:插入2  得到新序列{1  2  3  4  5}
為了看程序中如何完成插入過程,我們以第五步為例:
初始時:1  3  4  5  2
將2存入臨時變量tmp
將下標j指向2之前的元素5,然后根據(jù)tmp和a[j]的大小關系決定該元素是否應該后移。如果a[j]> tmp,則將a[j]后移到a[j+1],序列變成1  3  4  5  5。
將下標j前移
判斷a[j]> tmp,后移a[j]到a[j+1],得到1  3  4  4  5
將下標j前移
判斷a[j]> tmp,后移a[j]到a[j+1],得到1  3  3  4  5
因為a[j]< =tmp,所以將tmp放回a[j+1],得到  1  2  3  4  5
現(xiàn)在,輸入n個整數(shù),根據(jù)以上算法,輸出插入排序的全過程。


輸入
第一行一個正整數(shù)n,表示元素個數(shù) 

第二行為n個整數(shù),以空格隔開 


數(shù)據(jù)規(guī)模和約定
n< =100
整數(shù)元素在int范圍內(nèi)

輸出
   有n個元素,因此輸出部分分為n個部分,每個部分開頭行為:Insert  element[i],i為第幾個元素。然后對于每一個部分,輸出該部分該元素在插入排序過程中的每一步產(chǎn)生的新序列,初始時的序列以Init:打頭,然  后每一步后移數(shù)組元素后的元素序列以Move  back:打頭,最后得到的最終結果序列以Final:打頭。序列元素間以一個空格隔開。示例請看樣例輸出。每一個部分的Insert  element[i]之后的每一步的輸出行之前要縮進兩格,即輸出兩個空格。
樣例輸入
5
3 1 5 4 2
樣例輸出
Insert element[1]:
Init:3
Final:3
Insert element[2]:
Init:3 1
Move back:3 3
Final:1 3
Insert element[3]:
Init:1 3 5
Final:1 3 5
Insert element[4]:
Init:1 3 5 4
Move back:1 3 5 5
Final:1 3 4 5
Insert element[5]:
Init:1 3 4 5 2
Move  back:1 3 4 5 5
Move  back:1 3 4 4 5
Move  back:1 3 3 4 5
Final:1 2 3 4 5
提示
零基礎同學可以先學習視頻課程,包含C/C++、Python、百練、藍橋杯輔導、算法數(shù)據(jù)結構等課程,提供視頻講解以及配套習題,還有老師答疑,點擊這里了解課程詳情

比賽公告

嗚嗚嗚嗚嗚嗚嗚嗚無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無無aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa