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

Dotcpp  >  編程題庫  >  藍(lán)橋杯算法提高VIP-選擇排序
題目 1574:

藍(lán)橋杯算法提高VIP-選擇排序

時(shí)間限制: 2s 內(nèi)存限制: 192MB 提交: 2091 解決: 960

題目描述

排序,顧名思義,是將若干個(gè)元素按其大小關(guān)系排出一個(gè)順序。形式化描述如下:有n個(gè)元素a[1],a[2],…,a[n],從小到大排序就是將它們排成一個(gè)新順序a[i[1]]< a[i[2]]< …< a[i[n]]
i[k]為這個(gè)新順序。
選擇排序的思想極其簡單,每一步都把一個(gè)最小元素放到前面,如果有多個(gè)相等的最小元素,選擇排位較考前的放到當(dāng)前頭部。還是那個(gè)例子:{3  1  5  4  2}:
第一步將1放到開頭(第一個(gè)位置),也就是交換3和1,即swap(a[0],a[1])得到{1  3  5  4  2}
第二步將2放到第二個(gè)位置,也就是交換3和2,即swap(a[1],a[4])得到{1  2  5  4  3}
第三步將3放到第三個(gè)位置,也就是交換5和3,即swap(a[2],a[4])得到{1  2  3  4  5}
第四步將4放到第四個(gè)位置,也就是交換4和4,即swap(a[3],a[3])得到{1  2  3  4  5}
第五步將5放到第五個(gè)位置,也就是交換5和5,即swap(a[4],a[4])得到{1  2  3  4  5}
輸入n個(gè)整數(shù),輸出選擇排序的全過程。
要求使用遞歸實(shí)現(xiàn)。

輸入格式

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

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


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

輸出格式

共n行,每行輸出第n步選擇時(shí)交換哪兩個(gè)位置的下標(biāo),以及交換得到的序列,格式: 
swap(a[i],a[j]):a[0]  …  a[n-1] 
i和j為所交換元素的下標(biāo),下標(biāo)從0開始,最初元素順序按輸入順序。另外請保證i< =j 
a[0]…a[n-1]為交換后的序列,元素間以一個(gè)空格隔開 

樣例輸入

5
4 3 1 1 2

樣例輸出

swap(a[0], a[2]):1 3 4 1 2
swap(a[1], a[3]):1 1 4 3 2
swap(a[2], a[4]):1 1 2 3 4
swap(a[3], a[3]):1 1 2 3 4
swap(a[4], a[4]):1 1 2 3 4

提示

零基礎(chǔ)同學(xué)可以先學(xué)習(xí)視頻課程,包含C/C++、Python、百練、藍(lán)橋杯輔導(dǎo)、算法數(shù)據(jù)結(jié)構(gòu)等課程,提供視頻講解以及配套習(xí)題,還有老師答疑,點(diǎn)擊這里了解課程詳情
標(biāo)簽