我在想乙個簡單的亂序怎麼生成,我寫了順序,然後打亂,請教一下大神怎麼打亂才能讓熵大。
原始碼在下:
#include #include #include #define n 10
//隨機數運算要簡單,需要時間短,大神求交換s與n的關係
//得到乙個不重複的隨機序列,上限n-1,下限0
int luan ( int down,int up ,int arr[n] )
{ /*生成順序的數,再進行隨機兩個數交換,需要知道交換次數多少才亂*/
int i;
int s=7;//兩個數交換次數,朋友告訴我10個體是7能達到熵最大
//100次要交換幾次,s和n的關係,請教大神
int *a,*b,t;//為了下面交換
for ( i=down; i
隨機數 C語言
怎樣獲得某一範圍的隨機整數?直接使用這種方法 rand n 試圖返回從0到n 1的整數 不好,因為許多隨機數生成器的低位並不隨機。乙個較好的方法是 int double rand double rand max 1 n 兩種方法都需要知道rand max,而且假設n要遠遠小於rand max。如果n...
C語言隨機數
在c語言函式庫中包含了乙個產生隨機數的函式 int rand void 函式返回的是乙個界於0 32767之間的偽隨機數,包括0和32767。注意,這裡產生的是偽隨機數,不是真正意義上的隨機數,看下面的程式 include stdlib.h include stdio.h void main 執行結...
c語言隨機數
隨機值函式rand 首先需要包含標頭檔案 include 計算機的優點是準確,並不擅長隨機和模擬,所以使用的rand 函式並不是真正意義上的隨機,而是一種偽隨機數使用rand 生成隨機數之前需要用隨機發生器的初始化函式srand unsigned seed 也位於stdlib.h 中 進行隨機數序列...