qt定義字符串?dāng)?shù)組 如何將一個(gè)有序的數(shù)組隨機(jī)排序?
如何將一個(gè)有序的數(shù)組隨機(jī)排序?似乎沒有已知的隨機(jī)置亂數(shù)組的方法,所以您只能自己編寫。我嘗試了一種方法,即從數(shù)組中隨機(jī)提取一個(gè)值,然后將其隨機(jī)插入數(shù)組中。結(jié)果不是那么理想,因?yàn)樵陔S機(jī)插入時(shí),隨機(jī)位置很可
如何將一個(gè)有序的數(shù)組隨機(jī)排序?
似乎沒有已知的隨機(jī)置亂數(shù)組的方法,所以您只能自己編寫。
我嘗試了一種方法,即從數(shù)組中隨機(jī)提取一個(gè)值,然后將其隨機(jī)插入數(shù)組中。結(jié)果不是那么理想,因?yàn)樵陔S機(jī)插入時(shí),隨機(jī)位置很可能不是前面,這會(huì)導(dǎo)致前面幾個(gè)值沒有變化,所以會(huì)讓人覺得沒有效果。
后來,我更改了它,并將每個(gè)隨機(jī)選擇的值放在數(shù)組前面以徹底解決問題。
C#數(shù)組隨機(jī)排序?
int[]a={
1,
2,
4,
5,
3,
6,
7,8}int[]b=a.OrderBy(x=>Guid.NewGuid()).ToArray()foreach(b中的int v)控制臺(tái)寫入線(五)控制臺(tái).ReadKey()
上面的示例使用c#3.0中添加的LINQ技術(shù)中的orderby方法進(jìn)行排序。排序基于與原始序列元素對應(yīng)的“鍵”—網(wǎng)格.NewGuid()方法返回一個(gè)隨機(jī)的32位非重復(fù)guid字符串。由于生成的每個(gè)guid字符串的大小不同,并且大小與生成序列無關(guān),因此按此“鍵”排序的整數(shù)序列的順序是隨機(jī)的。