คำถามติดแท็ก random

แท็กนี้มีไว้สำหรับคำถามที่เกี่ยวข้องกับตัวเลขสุ่มและเครื่องกำเนิดไฟฟ้าไม่ว่าจะเป็นการหลอกแบบสุ่มหรือสุ่มอย่างแท้จริง

2
ทำไมฉันถึงได้รับสีลวดลายนี้เมื่อใช้แรนด์ ()
ฉันพยายามสร้างไฟล์รูปภาพเช่นนี้ uint8_t raw_r[pixel_width][pixel_height]; uint8_t raw_g[pixel_width][pixel_height]; uint8_t raw_b[pixel_width][pixel_height]; uint8_t blue(uint32_t x, uint32_t y) { return (rand()%2)? (x+y)%rand() : ((x*y%1024)%rand())%2 ? (x-y)%rand() : rand(); } uint8_t green(uint32_t x, uint32_t y) { return (rand()%2)? (x-y)%rand() : ((x*y%1024)%rand())%2 ? (x+y)%rand() : rand(); } uint8_t red(uint32_t x, uint32_t y) { return (rand()%2)? (y-x)%rand() : ((x*y%1024)%rand())%2 …
170 c  image  random 

17
วิธีจัดการกับตัวสร้าง SecureRandom ที่ช้าจะทำอย่างไร
ถ้าคุณต้องการตัวเลขที่แข็งแกร่งใน Java SecureRandomคุณใช้ น่าเสียดายที่SecureRandomอาจช้ามาก ถ้ามันใช้/dev/randomบน Linux มันสามารถบล็อกรอเอนโทรปีเพียงพอที่จะสร้างขึ้น คุณจะหลีกเลี่ยงบทลงโทษการแสดงได้อย่างไร? มีใครใช้Uncommon Mathsเป็นวิธีการแก้ปัญหานี้หรือไม่? ใครช่วยยืนยันว่าปัญหาประสิทธิภาพนี้ได้รับการแก้ไขใน JDK 6 หรือไม่

8
มีองค์ประกอบแบบสุ่มจำนวนเท่าใดก่อนที่ MD5 จะสร้างการชน
ฉันมีห้องสมุดภาพใน Amazon S3 สำหรับแต่ละภาพฉัน md5 URL ต้นทางบนเซิร์ฟเวอร์ของฉันพร้อมกับเวลาประทับเพื่อรับชื่อไฟล์ที่ไม่ซ้ำกัน เนื่องจาก S3 ไม่สามารถมีไดเรกทอรีย่อยได้ฉันจึงต้องจัดเก็บรูปภาพเหล่านี้ทั้งหมดไว้ในโฟลเดอร์ flat เดียว ฉันจำเป็นต้องกังวลเกี่ยวกับการชนกันในค่าแฮชของ MD5 ที่สร้างขึ้นหรือไม่ โบนัส: ฉันสามารถมีไฟล์ได้กี่ไฟล์ก่อนที่ฉันจะเริ่มเห็นการชนในค่าแฮชที่ MD5 สร้าง
164 random  md5  hash 

2
หมายเลข 161803398 A เป็น 'พิเศษ' หรือไม่ ด้านในของคณิตศาสตร์สุ่ม ()
ฉันสงสัยว่าคำตอบคือ ' เพราะคณิตศาสตร์ ' แต่ฉันหวังว่าบางคนสามารถให้ข้อมูลเชิงลึกมากขึ้นในระดับพื้นฐาน ... วันนี้ฉันไปโผล่มาในซอร์สโค้ด BCL ดูว่ามีบางคลาสที่ฉันใช้มาก่อนอย่างไรบ้าง ฉันไม่เคยคิดเกี่ยวกับวิธีการสร้างตัวเลขสุ่ม (หลอก) มาก่อนดังนั้นฉันจึงตัดสินใจว่าจะทำอย่างไร แหล่งข้อมูลเต็มรูปแบบที่นี่: http://referencesource.microsoft.com/#mscorlib/system/random.cs#29 private const int MSEED = 161803398; ค่า MSEED นี้ใช้ทุกครั้งที่มีการสุ่มคลาส () คลาส อย่างไรก็ตามฉันเห็น 'หมายเลขเวทมนตร์' นี้ - 161803398 - และฉันไม่มีความคิดที่ผิดพลาดว่าเพราะเหตุใดจึงเลือกหมายเลขนั้น ไม่ใช่จำนวนเฉพาะหรือกำลังสองไม่ใช่จำนวนครึ่งทางที่ดูเหมือนจะสำคัญกว่า ฉันดูมันเป็นเลขฐานสองและเลขฐานสิบหกและมันก็ดูเหมือนตัวเลขกับฉัน ฉันพยายามค้นหาหมายเลขใน Google แต่ไม่พบอะไรเลย
162 c#  .net  algorithm  random 

14
เลือกค่าแบบสุ่มจาก enum หรือไม่
หากฉันมี Enum เช่นนี้: public enum Letter { A, B, C, //... } วิธีที่ดีที่สุดในการเลือกแบบสุ่มคืออะไร ไม่จำเป็นต้องเป็นกระสุนคุณภาพการผลิต แต่การกระจายที่ค่อนข้างดีก็ดี ฉันสามารถทำอะไรเช่นนี้ private Letter randomLetter() { int pick = new Random().nextInt(Letter.values().length); return Letter.values()[pick]; } แต่จะมีวิธีที่ดีกว่า ฉันรู้สึกว่านี่เป็นสิ่งที่ถูกแก้ไขก่อนหน้านี้
162 java  random  enums 

8
วิธีการสร้างเครื่องกำเนิดจำนวนสุ่มอย่างถูกต้อง
ฉันกำลังพยายามสร้างสตริงแบบสุ่มใน Go และนี่คือรหัสที่ฉันเขียน: package main import ( "bytes" "fmt" "math/rand" "time" ) func main() { fmt.Println(randomString(10)) } func randomString(l int) string { var result bytes.Buffer var temp string for i := 0; i < l; { if string(randInt(65, 90)) != temp { temp = string(randInt(65, 90)) result.WriteString(temp) i++ } } …
160 random  go 

28
เลือก N องค์ประกอบสุ่มจากรายการ <T> ใน C #
ฉันต้องการอัลกอริทึมด่วนเพื่อเลือก 5 องค์ประกอบแบบสุ่มจากรายการทั่วไป ตัวอย่างเช่นผมต้องการที่จะได้รับ 5 List&lt;string&gt;องค์ประกอบสุ่มจาก

13
การสร้างจำนวนเต็มแบบสุ่มจากช่วง
ฉันต้องการฟังก์ชั่นที่จะสร้างจำนวนเต็มแบบสุ่มในช่วงที่กำหนด (รวมถึงค่าเส้นขอบ) ฉันไม่ต้องการคุณภาพ / การสุ่มที่ไม่มีเหตุผลฉันมีข้อกำหนดสี่ข้อ: ฉันต้องการมันเร็ว โครงการของฉันต้องสร้างตัวเลขสุ่มนับล้าน (หรือบางครั้งก็เป็นสิบล้าน) และฟังก์ชันตัวสร้างปัจจุบันของฉันได้พิสูจน์แล้วว่าเป็นคอขวด ฉันต้องการมันเพื่อให้มีความสม่ำเสมอ (การใช้แรนด์ () นั้นดีมาก) ช่วง min-max สามารถเป็นอะไรก็ได้ตั้งแต่ &lt;0, 1&gt; ถึง &lt;-32727, 32727&gt; มันจะต้องมีเมล็ด ขณะนี้ฉันมีรหัส C ++ ดังต่อไปนี้: output = min + (rand() * (int)(max - min) / RAND_MAX) ปัญหาคือว่ามันไม่เหมือนกันจริงๆ - max จะถูกส่งคืนเมื่อ rand () = RAND_MAX (สำหรับ Visual C ++ เป็น …
157 c++  random 

11
วิธีที่ดีที่สุดในการสร้างโทเค็นที่ไม่เหมือนใครใน Rails?
นี่คือสิ่งที่ฉันใช้ โทเค็นไม่จำเป็นต้องได้ยินเพื่อคาดเดามันเป็นเหมือนตัวระบุ URL แบบสั้นมากกว่าสิ่งอื่นใดและฉันต้องการให้มันสั้น ฉันได้ติดตามตัวอย่างที่ฉันพบทางออนไลน์และในกรณีที่มีการปะทะกันฉันคิดว่ารหัสด้านล่างจะสร้างโทเค็นใหม่ แต่ฉันไม่แน่ใจจริง ๆ ฉันอยากรู้ว่าจะเห็นคำแนะนำที่ดีกว่านี้ได้อย่างไรเนื่องจากมันรู้สึกหยาบเล็กน้อยรอบ ๆ ขอบ def self.create_token random_number = SecureRandom.hex(3) "1X#{random_number}" while Tracker.find_by_token("1X#{random_number}") != nil random_number = SecureRandom.hex(3) "1X#{random_number}" end "1X#{random_number}" end คอลัมน์ฐานข้อมูลของฉันสำหรับโทเค็นเป็นดัชนีที่ไม่ซ้ำกันและฉันยังใช้validates_uniqueness_of :tokenกับโมเดล แต่เพราะสิ่งเหล่านี้ถูกสร้างขึ้นในแบทช์โดยอัตโนมัติตามการกระทำของผู้ใช้ในแอป (พวกเขาสั่งซื้อและซื้อโทเค็นเป็นหลัก) เป็นไปไม่ได้ที่แอพจะมีข้อผิดพลาดเกิดขึ้น ฉันก็สามารถเดาได้ว่าเพื่อลดโอกาสในการชนเพิ่มสตริงใหม่ในตอนท้ายสิ่งที่สร้างขึ้นตามเวลาหรืออะไรทำนองนั้น แต่ฉันไม่ต้องการให้โทเค็นยาวเกินไป

12
สุ่มตัวเลขระหว่าง 2 ตัวเลขสองตัว
เป็นไปได้ไหมที่จะสร้างตัวเลขสุ่มระหว่าง 2 doubles? ตัวอย่าง: public double GetRandomeNumber(double minimum, double maximum) { return Random.NextDouble(minimum, maximum) } จากนั้นฉันจะเรียกมันว่า: double result = GetRandomNumber(1.23, 5.34); ความคิดใด ๆ ที่จะได้รับการชื่นชม.
156 c#  random 

9
วิธีที่มีประสิทธิภาพในการสร้างสตริง UUID ใน JAVA (UUID.randomUUID (). toString () โดยไม่มีขีดกลาง)
ฉันต้องการโปรแกรมอรรถประโยชน์ที่มีประสิทธิภาพเพื่อสร้างลำดับของไบต์ที่ไม่ซ้ำกัน UUID เป็นตัวเลือกที่ดี แต่UUID.randomUUID().toString()สร้างสิ่ง44e128a5-ac7a-4c9a-be4c-224b6bf81b20ที่ดี แต่ฉันชอบสตริงที่ไม่มีเส้นประ ฉันกำลังมองหาวิธีที่มีประสิทธิภาพในการสร้างสตริงแบบสุ่มเฉพาะจากตัวอักษรและตัวเลข (ไม่มีเครื่องหมายขีดกลางหรือสัญลักษณ์พิเศษอื่น ๆ )
154 java  random  uuid 

30
ต้องการเครื่องกำเนิดไฟฟ้าแบบสุ่มที่คาดการณ์ได้
ฉันเป็นผู้พัฒนาเกมบนเว็บและฉันมีปัญหากับตัวเลขสุ่ม สมมติว่าผู้เล่นมีโอกาส 20% ที่จะได้รับการโจมตีด้วยดาบอย่างรุนแรง นั่นหมายความว่า 1 ใน 5 การเข้าชมควรสำคัญ ปัญหาคือฉันได้ผลลัพธ์ในชีวิตจริงที่แย่มาก - บางครั้งผู้เล่นจะได้รับ 3 crits ใน 5 ครั้งบางครั้งก็ไม่มี 15 ครั้ง การต่อสู้ค่อนข้างสั้น (3-10 ครั้ง) ดังนั้นสิ่งสำคัญคือต้องมีการกระจายแบบสุ่มที่ดี ขณะนี้ฉันใช้ PHP mt_rand()แต่เราเพิ่งย้ายรหัสของเราไปยัง C ++ ดังนั้นฉันต้องการแก้ปัญหานี้ในเอ็นจิ้นใหม่ของเกม ฉันไม่ทราบว่าวิธีการแก้ปัญหาเป็นเครื่องกำเนิดไฟฟ้าแบบสุ่มสม่ำเสมอหรืออาจจะจำรัฐสุ่มก่อนหน้านี้เพื่อบังคับให้มีการแจกแจงที่เหมาะสม
151 c++  algorithm  random 

25
บันทึกแบบสุ่มใน ActiveRecord
ฉันต้องการรับการบันทึกแบบสุ่มจากตารางผ่าน ActiveRecord ฉันได้ตามตัวอย่างจากJamis บั๊กจาก 2006 อย่างไรก็ตามฉันได้พบวิธีอื่นผ่านการค้นหาของ Google (ไม่สามารถกำหนดแอตทริบิวต์ด้วยลิงก์เนื่องจากข้อ จำกัด ของผู้ใช้ใหม่): rand_id = rand(Model.count) rand_record = Model.first(:conditions =&gt; ["id &gt;= ?", rand_id]) ฉันอยากรู้ว่าคนอื่น ๆ ที่นี่ทำได้อย่างไรหรือถ้าใครรู้ว่าจะมีประสิทธิภาพมากขึ้นอย่างไร


9
เครื่องมือสร้างตัวเลขสุ่มแบบสุ่มได้
Math.random()ฟังก์ชันJavaScript ส่งคืนค่าสุ่มระหว่าง 0 ถึง 1 โดยอัตโนมัติตามเวลาปัจจุบัน (คล้ายกับ Java ฉันเชื่อ) อย่างไรก็ตามฉันไม่คิดว่าจะมีวิธีใดที่จะทำให้คุณเป็นเจ้าของเมล็ดพันธุ์ ฉันจะสร้างตัวสร้างตัวเลขสุ่มที่ฉันสามารถให้ค่าเมล็ดของตัวเองได้อย่างไรเพื่อที่ฉันจะสามารถสร้างลำดับสุ่ม (หลอก) ตัวเลขซ้ำได้?
150 javascript  random  seed 

โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.