c語(yǔ)言隨機(jī)排序函數(shù) C語(yǔ)言隨機(jī)排序

C語(yǔ)言中怎么對(duì)數(shù)組隨機(jī)排序?

可以用一個(gè)輔助數(shù)組進(jìn)行隨機(jī)排序,方法如下:

創(chuàng)新互聯(lián)建站專(zhuān)注于企業(yè)成都全網(wǎng)營(yíng)銷(xiāo)推廣、網(wǎng)站重做改版、友好網(wǎng)站定制設(shè)計(jì)、自適應(yīng)品牌網(wǎng)站建設(shè)、H5頁(yè)面制作、成都商城網(wǎng)站開(kāi)發(fā)、集團(tuán)公司官網(wǎng)建設(shè)、外貿(mào)網(wǎng)站制作、高端網(wǎng)站制作、響應(yīng)式網(wǎng)頁(yè)設(shè)計(jì)等建站業(yè)務(wù),價(jià)格優(yōu)惠性?xún)r(jià)比高,為友好等各大城市提供網(wǎng)站開(kāi)發(fā)制作服務(wù)。

1 獲取要排序的數(shù)組長(zhǎng)度L。

2 定義整型的輔助數(shù)組,長(zhǎng)度為L(zhǎng)。

3 生成L個(gè)隨機(jī)整型數(shù)字,存與輔助數(shù)組中,這樣要排序數(shù)組和輔助數(shù)組就是一一對(duì)應(yīng)的了。

4 對(duì)輔助數(shù)組排序,排序過(guò)程中,當(dāng)改變輔助數(shù)組中數(shù)字的位置時(shí),同步改變要隨機(jī)排序的原數(shù)組中對(duì)應(yīng)的元素位置。比如為排序交換輔助數(shù)組的第三個(gè)和第五個(gè)元素,那么就要同時(shí)交換原數(shù)組中的第三個(gè)和第五個(gè)元素。

5 當(dāng)輔助數(shù)組排序完成后,原數(shù)組中的值就是隨機(jī)順序了。

6 刪除輔助數(shù)組。

用C語(yǔ)言如何將一個(gè)一維數(shù)組中的元素隨機(jī)排序

#include

#include

#include

intmain()

{

inti,j,n,k,t,a[100];

srand((unsigned)time(NULL));

p

利用rand()函數(shù)產(chǎn)生隨機(jī)數(shù)字,rand()%n產(chǎn)生小于n的隨機(jī)數(shù),然后交換。

運(yùn)行的結(jié)果:

#include

#include

intmain()

{

intnbs

利用rand()函數(shù)產(chǎn)生隨機(jī)數(shù)字,rand()%n產(chǎn)生小于n的隨機(jī)數(shù),然后交換。

擴(kuò)展資料

C語(yǔ)言排序法

在一層循環(huán)找出最小數(shù)的下標(biāo),該下標(biāo)用min保存,直到比較完整個(gè)數(shù)組,即可找到最小的數(shù),然后將該數(shù)放入數(shù)組的第一位。

這樣只能排好一個(gè)元素,于是需要再嵌套一層外層循環(huán)即可排好所有元素。第二次循環(huán)就不用再比較第一個(gè)元素了,因?yàn)榈谝粋€(gè)元素已經(jīng)排好,依次類(lèi)推,每一次循環(huán)就會(huì)排好一個(gè),進(jìn)行n-1次循環(huán)即可排好所有元素。

用C語(yǔ)言如何將一個(gè)一維數(shù)組中的元素隨機(jī)排序?

利用rand()函數(shù)產(chǎn)生隨機(jī)數(shù)字,rand()%n產(chǎn)生小于n的隨機(jī)數(shù), 然后交換。

下面是我寫(xiě)的程序:

#include stdio.h#include stdlib.hint main(){ int a[1000], n, i, j, p, q, t; while(1) { printf("\n\n請(qǐng)輸入一維數(shù)組的維數(shù),0結(jié)束 n = "); scanf("%d", n); if(n==0) break; printf("請(qǐng)輸入一維數(shù)組中的數(shù)據(jù):\n"); for(i=0; in; i++) scanf("%d", a[i]); j=10; while(j--)//隨機(jī)交換10次 { p=rand()%n;//產(chǎn)生兩個(gè)隨機(jī)數(shù) q=rand()%n; t=a[p];//交換 a[p]=a[q]; a[q]=t; } printf("\n隨機(jī)交換后數(shù)組的元素為:\n"); for(i=0; in; i++) printf("%d ", a[i]); }}

分享名稱(chēng):c語(yǔ)言隨機(jī)排序函數(shù) C語(yǔ)言隨機(jī)排序
轉(zhuǎn)載來(lái)于:http://muchs.cn/article14/hgchde.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供軟件開(kāi)發(fā)面包屑導(dǎo)航、微信公眾號(hào)、響應(yīng)式網(wǎng)站、關(guān)鍵詞優(yōu)化、小程序開(kāi)發(fā)

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶(hù)投稿、用戶(hù)轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀(guān)點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話(huà):028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

網(wǎng)站托管運(yùn)營(yíng)