幾個關於隨機數組產生的函式 包括各類可重複或不重複
使用方法都比較簡單,也不多說了,無非就是用乙個陣列和乙個表示陣列大小的整數來呼叫,這裡要說明的是,你必須保證陣列的大小要足夠,其他的函式的作用可以參考具體檔案的注釋,我個人覺得夠詳細了
rand.h
//-------created by 九天雁翎(jtianling) email:[email protected]
#ifndef
rand_h
#define
rand_h
namespace
jtianling
//end of namespace jtianling
#endif
rand.cpp
//-------created by 九天雁翎(jtianling) email:[email protected]
#include
"rand.h"
#include
#include
#include
#include
namespace
jtianling
//確保範圍正確
return rand()%(j-i+1) + i;}//
演算法描述如<>
//by mark allen weiss
題目.8演算法所示,根據習慣,不對arr的大小做任何檢驗,
//呼叫此函式的人應該確保這一點,即arr的大小大於等於n
//此演算法的用途是高效地產生乙個不重複的隨機序列
//且此序列正好包括(1,n)中所有自然數
void randarraynorepeatinn(int arr, int n)
for(int i=0; i}//
此演算法產生隨機的不重複的陣列,陣列大小為n
//利用set容器的特性來保證沒有重複,因為set容器的查詢遠快於乙個乙個查詢
//所以此方法比<>
//by mark allen weiss
題目.8演算法所示演算法快,而且增長慢很多
void randarraynorepeat(int arr, int n)}}
}//產生乙個的隨機序列且此序列的數值只在(1,n)中,序列的大小由n指定
void randarrayinn(int arr, int n)}//
產生乙個隨機的序列,且序列的值為完全隨機,序列的大小由n指定
void randarray(int arr, int n)
}}//end of namespace jtianling
產生隨機數函式
1.system.currenttimemillis 2.math.random 返回乙個隨機雙精度值d,如 0.0 d 1.0 一般地,a math.random b 返回 a 到 a b 之間的隨機數,不包括 a b 3.生成任意兩個字元 ch1 和 ch2 ch1 ch2 之間的隨機字元 ch...
JS產生隨機數的幾個用法!
var chars 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z function generatemixed n return res 1.math.random 結果為0 1間的乙個隨機數 包括0,...
JS產生隨機數的幾個用法!
var chars 0 1 2 3 4 5 6 7 8 9 a b c d e f g h i j k l m n o p q r s t u v w x y z function generatemixed n return res 1.math.random 結果為0 1間的乙個隨機數 包括0,...