999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一個非常簡單的排序程序

2011-11-14 03:45:54華晶
中國科技信息 2011年24期
關鍵詞:排序

華晶

北華大學基礎醫學院生物醫學工程教研室,吉林 吉林 132013

一個非常簡單的排序程序

華晶

北華大學基礎醫學院生物醫學工程教研室,吉林 吉林 132013

介紹一非常簡單的排序應用程序。

排序;排序程序;VB程序

把n個任意排列的一組數排序,轉變為從小到大或從大到小排列,這在數據處理中(如統計學處理中的求區分度等)很有用。實際中,有人曾提出過或簡單些或復雜些的排序程序。

筆者提出一個非常簡單的排序程序。

排序思想:比如,把n個任意排列的一組數轉變從大到小排列。先從排列中選出最大的數,作為排列的第一個數;然后再從余下的數中選出最大的數(次最大),作為排列的第二個大數(次最大);……,如此進行下去,直到結束,則獲取從大到小的排列。

做法如下:以VB代碼排序程序為例。

1.賦值給定義的數組t(n),如把任意排列的六個數4,5,2,3,1,7賦數組t (n)后,可得t(1)=4,t(2)=5, t(3)=2, t(4) =3, t(5) =1,t(6)=7;

2.選一個比數組中的數都小的數,用變量代碼tx表示之,如令tx=-100;3.編下列二重循環作排序主程序,

選大數總的做法是:第一重循環 i的數值,對應各次排列首位數的位置,伴隨i=1到6的變化,在第二重循環中,在j=i到6循環中,選出各個最大數tx= t(j),依次標記為t(i) = tx(i=1,2,3,4,5,6)。在j=i到6的循環中,每當選出大于相應首位數的大數,則把該大數tx = t(j)與此時排在數組相應首位的數t(i)互換位置,其它數位置不動。

分析上述主程序排序過程:以對數組4,5,2,3,1,7作從大到小排列為例。

第一重循環 i=1時,排在首位的數是t(i) = t(j)= t(1) = 4。若各條件t(j) > tx成立,則由第二重循環選出最大數tx =t(j) = t(6) =7,記為t(i) = t(1) = 7。

選出最大數t(i) =t(1)=7的過程如下:

當第二重循環首次排序j=i=1時,有t (j)=t(1)=4(此時首位數是4),然后用條件語句

作判斷, 條件 t(j) > tx 成立,即 t(j) =t(1)=4 > tx = -100 成立,則執行tx = t(j)、t(j) = t(i) 及 t(i) = tx,于是由tx = t(j)得到從tx=-100 轉換為tx= t(j)= t (1)=4,tx=4為初次選出的大數。之后執行位置互換 t(j) = t(i) 及t(i) = tx,即由t(j) = t(i)知, t(j) = t(1)=4 與t(i) = t(1) =4互換位置。但因此時t(j) = t(1)與t(i) = t(1)數值相同(均為4),屬同一位置的數,可見該次排序中,數組中原先各數位置沒變,仍為4,5,2,3,1,7(請記住此時tx=4);

每次第二重循環開始進行首次排序(j=i)時,數組均維持前邊的排列不變。

當第二重循環中的j=2時,有t(j)=t(2) =5,條件t(j) > tx成立,即t(j) = t(2) =5> tx=4成立,于是選出大數tx= t(j)=t (2)=5。之后執行位置互換t(j) = t(i) 及 t (i) = tx,由t(j) = t(i) 知,t(j) = t(2)=5被前次t(i) = t(1) =4替換,變為t(j) = t (2) =4,于是前次排列數組中第二個數5被換為原排在首位的數4。由后一轉換t(i) = tx知,選出的大數t(i) = t(1)= tx=5被換到首位,形成排列中第二個數5與原首數4的位置互換,其它數的原位置不變,于是原排列4,5,2,3,1,7變為5,4,2,3,1,7(請記住此時tx=5);

可見,滿足條件t(j) > tx則作位置互換,選出的大數被換到此刻數組首位。

當第二重循環j=3,4,5時,有t(j)= t (3)=2,t(j)= t(4)=3、t(j)= t(5)=1條件t(j) > tx=5不成立,故不執行t(j) = t(i) 及t (i) = tx位置互換,數組仍為前次排列5,4,2,3,1,7;

可見,不滿足條件t(j) > tx時,各數排列位置不變,維持前一次排列。

當第二重循環j=6時,有t(j)= t(6)=7,條件t(j) > tx成立,即t(j)= t(6)=7> tx=5成立,

于是執行tx= t(j)、t(j) = t(i) 及 t(i) = tx。由tx= t(j)選出大數tx= t(j)= t(6) =7。作位置互換t(j) = t(i) 及 t(i) = tx,有t(j)= t(6)=7被換到前次排列t(i) = t(1) = tx=5的位置(首位),而前次排在首位的數5被換到t(j)= t(6)的位置,排列5,4,2,3,1,7變為7,4,2,3,1,5。

至此,第一重循環第一步(i=1)結束,選出最大數7,并用此時t(i) = t(1) = tx=7標記。

第一重循環進行第二步,即 i=2時,重定tx=-100,并仍由第二重循環選出數組中的大數,即選出原數組中的第二最大數tx =5,并記為t(i) = t(2)= 5。

因此時第二重循環由j=i=2,取到j=6,故第二大數是去掉前次排在首位的大數7以后的數組中選,即在4,2,3,1,5中選,故此數組的首數是4。

第二大數5選出過程如下:

當第二重循環j=2時,條件t(j) = t(2) =4 > tx=-100成立,執行tx=t(j)、 t(j) = t(i)及t(i) = tx。此時選出大數tx=4,類似上述i=1時的分析,故排列4,2,3,1,5沒變,總排列仍是7,4,2,3,1,5。其實,這是第二重循環第二次作首次排列,故排列應維持前次排列不變。

當j=3,4,5時,分別有t(j)= t(3) =2,t(j)= t(4) =3,t(j)= t(5) =1,條件t(j) > tx=4不成立,排列不變(請記住此時仍是tx=4)。

當j=6時,有t(j)= t(6)=5,條件t(j) = t(6)=5> tx=4成立,選出大數tx= t(j) = t(6)=5。之后作位置互換,由t(j) = t(i)知,t(j)= t(6)= 5被換為前次t(i) = t(2)= tx=4,即換為t(j)= t(6)= 4,由t(i) = tx知,t(i) = t(2)= tx =5(此次tx = 5),于是有5與排在首數4互換位置,排列由4,2,3,1,5變為5,2,3,1,4,總排列由7,4,2,3,1,5變為7,5,2,3,1,4。

至此,第一重循環第二步(i=2)結束,選出次大數5,并用此時t(i) = t(2) = tx=5標記。

如此進行下去,每當滿足條件t(j) > tx時,就有位置互換,把各次選出的最大數換到前邊相應的各個次最大數的位置,直到取完i=1到6及j=i到6,完成兩重循環,獲取從大到小的排列7,5,4,3,2,1。

源程序如下:

For i=1 To 6: Print t(i) , : Next i ‘顯示從大到小排列后的數組

運行程序結果:顯示出原排列為:4,5,2,3,1,7

從大到小排序為:7,5,4,3,2,1

由上述知,選最大數tx = t(j)及排序動作t(j) = t(i) 及 t(i) = tx只有滿足條件t(j) > tx時才發生,且只有互換位置動作,因此,程序運行過程的步驟少。

此排序程序比某些排序程序(有很多)運行步驟少得多、簡單得多。

改變程序中條件語句的大于號為小于號,并令tx=100, 可得從小到大排序。

[1]劉娜,鄭楠楠.插入類排序算法的改進及實際應用.沈陽大學學報2008;2:14~18

[2]吳奇英.計算機程序設計中的排序方法.交通科技與經濟2007;4:74~76

[3]姜曉銘主編.Visual Basic 6.0中文版編程指南.第1版:中國石化出版社2006;5

10.3969/j.issn.1001-8972.2011.24.047

華晶,工程碩士,實驗師。

猜你喜歡
排序
排排序
排序不等式
作者簡介
名家名作(2021年9期)2021-10-08 01:31:36
作者簡介
名家名作(2021年4期)2021-05-12 09:40:02
作者簡介(按文章先后排序)
名家名作(2021年3期)2021-04-07 06:42:16
恐怖排序
律句填空排序題的備考策略
節日排序
刻舟求劍
兒童繪本(2018年5期)2018-04-12 16:45:32
作者簡介(按文章先后排序)
名家名作(2017年2期)2017-08-30 01:34:24
主站蜘蛛池模板: 91精品久久久久久无码人妻| 欧美日韩免费观看| 亚洲精品国产自在现线最新| 国内黄色精品| 国产精品亚洲αv天堂无码| 国产成人精品18| 99精品国产自在现线观看| 色婷婷久久| 久久精品无码中文字幕| 国产欧美日韩在线一区| 亚洲中久无码永久在线观看软件| 伊人AV天堂| 亚洲国产天堂久久综合226114| 亚洲第一区欧美国产综合| 无码AV高清毛片中国一级毛片| 久久精品人人做人人爽97| 国产97视频在线观看| 视频一区亚洲| 国产永久在线观看| 国产人免费人成免费视频| 无码日韩视频| 日韩一区二区在线电影| 亚洲精品国产日韩无码AV永久免费网 | 亚洲码在线中文在线观看| 国产玖玖玖精品视频| 综合色区亚洲熟妇在线| 国产网站免费| 岛国精品一区免费视频在线观看| 亚洲AV一二三区无码AV蜜桃| 中文字幕亚洲综久久2021| 欧美在线黄| 国产成人啪视频一区二区三区| 99re在线视频观看| 成人亚洲天堂| 国产第二十一页| 欧美亚洲国产精品久久蜜芽| 国产欧美精品一区aⅴ影院| 999精品视频在线| 欧美一级专区免费大片| 第九色区aⅴ天堂久久香| 欧美综合区自拍亚洲综合天堂| 中国成人在线视频| 不卡视频国产| 最新午夜男女福利片视频| 一级一级一片免费| 2021国产v亚洲v天堂无码| 亚洲一区二区三区麻豆| 国产噜噜噜| 国产超薄肉色丝袜网站| 亚洲午夜国产精品无卡| 亚洲精品在线影院| 热这里只有精品国产热门精品| 麻豆精品在线视频| 亚洲黄网视频| 特级毛片8级毛片免费观看| 亚洲侵犯无码网址在线观看| 中文字幕在线免费看| 国内精品视频区在线2021| 国产在线观看成人91| 日韩欧美中文| 亚洲精品欧美日本中文字幕| 日韩精品无码免费一区二区三区| 免费一级无码在线网站| 欧美中文一区| 亚洲视频一区在线| 一本大道视频精品人妻| 国产一区二区三区在线精品专区| 毛片视频网址| 999精品色在线观看| 99视频在线免费| 中文字幕资源站| AV熟女乱| 亚洲动漫h| 精品人妻一区无码视频| 99ri国产在线| 露脸国产精品自产在线播| 亚洲二区视频| 狠狠ⅴ日韩v欧美v天堂| 国产在线观看精品| 亚洲国语自产一区第二页| 国产精品成人久久| 色综合a怡红院怡红院首页|