日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区

您的位置:首頁技術文章
文章詳情頁

JavaScript隨機數的組合問題案例分析

瀏覽:96日期:2023-10-26 17:35:43

本文實例講述了JavaScript隨機數的組合問題。分享給大家供大家參考,具體如下:

隨機數的組合問題在面試時是經常考的,比如之前我就被問到:“有一個可以生成1-5的隨機數函數,怎樣把它擴大到1-7?”

在解決這個問題之前,先來看看另外一個比較簡單的問題:“有一個可以生成1-7的函數,怎樣把它縮小到1-5?”下面是一個生成1-7函數random7:

function random7() {return Math.floor(Math.random() * 7 + 1);}

如何把它轉成生成1-5的函數呢?這很簡單:在一個循環里面調用random7,直到它的值小于等于5就結束循環并返回該隨機數即可,如下:

function random5() {var r = random7();while(r > 5) {r = random7();}return r;}

上面的思路就是:如果生成的隨機數大于5,就繼續調用random7,直到它小于等于5為止。好吧,回歸正題,再來看一下1-5如何轉成1-7吧。下面是一個隨機生成1-5的函數:

function random5() {return Math.floor(Math.random() * 5 + 1);}

我們現在的目的是要把它擴大到1-7。有一種很自然的想法可能就是:一個random5()產生的隨機數范圍是1-5,那么兩個random5()相加的范圍就是2-10了,再減去1就是1-9了,所以,可以按照上面的思路,在random7里來個循環,如果小于等于7就結束循環并且返回。如下:

function random7() {var r = random5() + random5() - 1;while(r > 7) {r = random5() + random5() - 1;}return r;}

這樣確實可以把1-5的范圍擴大到1-7,但是問題來了:所謂隨機函數,產生的每個值的概率是相等的,但是上面的方法產生的值概率相等嗎?我們可以使用概率論的組合知識算?繢矗荷?桑庇幸恢腫楹希?褪?andom5() + random5() - 1;中的兩個random5()均是1,生成2有兩種組合,第一個random5()是1第二個是2,或者相反。顯然,它們的概率是不等的。所以這種方法是不行的。

為了實現生成的每個值的概率是相等的,就是使得每個值的組合數相等。一種可行的方法是使得每個值的組合只有一種,如下:

function random7() {var r = (random5() - 1) * 5 + random5(); while(r > 7) {r = (random5() - 1) * 5 + random5(); }return r;}

為什么這樣就會使得各個值的概率相等呢?首先來看一下(random5() - 1) * 5,容易算?繒飧霰澩鍤繳?傻目裳≈凳牽埃?擔?0,15,20,用它去跟random5()相加,因為random5()的可選值是1, 2,3,4,5,所以兩者相加之后就會得到1-25之間的隨機數,而且產生的每個值的組合均只有一種,所以它們的概率也是相等的。

也許有人會問,(random5() - 1) * 5,這里為什么是乘以5而不是其他呢?這是因為乘以5之后和random5()相加,得到的數是連續的并且是等概率的。

上面討論的都是特殊情形1-5和1-7之間的轉換,對于其他的一般情形,大家可以自己試試哈。

感興趣的朋友可以使用在線HTML/CSS/JavaScript代碼運行工具:http://tools.jb51.net/code/HtmlJsRun測試上述代碼運行效果。

更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript數據結構與算法技巧總結》、《JavaScript數組操作技巧總結》、《JavaScript數學運算用法總結》、《JavaScript排序算法總結》、《JavaScript遍歷算法與技巧總結》、《JavaScript查找算法技巧總結》及《JavaScript錯誤與調試技巧總結》

希望本文所述對大家JavaScript程序設計有所幫助。

標簽: JavaScript
相關文章:
日本不卡不码高清免费观看,久久国产精品久久w女人spa,黄色aa久久,三上悠亚国产精品一区二区三区
亚洲精品高潮| 久久97视频| 欧美~级网站不卡| 国产资源在线观看入口av| 精品中文字幕一区二区三区| 国产欧美在线| 国产精品亚洲综合色区韩国| 综合一区av| 日本欧美一区二区| 91精品国产自产在线丝袜啪| 国产欧美三级| 精品日韩一区| 色偷偷色偷偷色偷偷在线视频| 国产精品成人3p一区二区三区| 国产乱子精品一区二区在线观看 | 极品av在线| 日韩影院二区| 日产精品一区| 婷婷色综合网| 亚洲午夜免费| 18国产精品| 国产调教一区二区三区| 欧美aa在线视频| 日韩免费一区| 黄色av日韩| 最新亚洲国产| 欧美1区二区| 久久久久久美女精品| 亚洲精品123区| 深夜日韩欧美| 精品国产中文字幕第一页| se01亚洲视频| 亚洲欧美高清| 国产日韩精品视频一区二区三区| 麻豆中文一区二区| 久久久精品网| 亚洲综合丁香| 国产精品片aa在线观看| 成人亚洲一区二区| 激情五月综合网| 亚洲精品日本| 麻豆精品99| 欧美一级精品| 伊人精品久久| 久久亚洲国产精品尤物| 久久麻豆精品| 日韩区欧美区| 中文字幕在线看片| 免播放器亚洲| 欧美国产另类| 亚洲国内精品| 亚洲免费福利一区| 国产精品二区不卡| 综合色一区二区| 色网在线免费观看| 日韩和欧美的一区| 日韩欧美网址| 日韩精品高清不卡| 久久久777| 国产精品网在线观看| 亚洲第一区色| 国产精品美女午夜爽爽| 91精品国产成人观看| 日本强好片久久久久久aaa| 青青青免费在线视频| 综合激情一区| 日韩不卡一区| 亚洲天堂免费| 色网在线免费观看| 日韩和欧美的一区| 精品在线99| 欧美精品第一区| 野花国产精品入口| 激情久久99| 亚洲欧美日本国产| 国产高清一区| 国产精品国产三级国产在线观看| 蜜桃av一区二区| av一区在线| 麻豆91在线播放| 亚洲视频电影在线| 久久美女性网| 国产精品美女在线观看直播| 免费日韩av片| 久久久国产精品一区二区中文| 欧美亚洲二区| 激情欧美一区| 国产成人精品一区二区免费看京| 一区二区三区国产盗摄| 久久人人88| 精品一区二区三区中文字幕在线| 日韩av一二三| 国产婷婷精品| 色偷偷色偷偷色偷偷在线视频| 国产亚洲精aa在线看| 日av在线不卡| 久久久久国产精品一区三寸| 麻豆免费精品视频| 欧美日韩一区二区三区四区在线观看 | 一区三区视频| 国产精品蜜芽在线观看| 国产精品久久久免费| 免费成人在线影院| 国产一区亚洲| 天堂√8在线中文| 免费在线亚洲欧美| 日韩av一区二区三区四区| 最新国产精品久久久| 午夜日韩福利| 免费不卡中文字幕在线| 99热国内精品| 久久国产日本精品| 日韩免费高清| 在线精品亚洲欧美日韩国产| 国产a久久精品一区二区三区| 国产精品第一国产精品| 日本va欧美va精品发布| 日本亚洲欧洲无免费码在线| 老鸭窝毛片一区二区三区| 午夜久久福利| 亚洲资源av| 久久亚洲精品伦理| 亚洲免费一区二区| 久久国产精品久久w女人spa| 久久一二三区| 美国三级日本三级久久99| 男女男精品视频网| 一区二区三区午夜视频| 亚洲欧美在线综合| 婷婷亚洲成人| 日本h片久久| 国产欧美一区二区三区米奇| 国产精品亚洲综合色区韩国| 国产精品qvod| 麻豆精品在线观看| 欧美国产小视频| 91亚洲国产成人久久精品| 国产中文字幕一区二区三区| 国产成人免费| 亚洲伦乱视频| 欧美日韩四区| 蜜桃视频在线观看一区| 日本不卡在线视频| 免费亚洲一区| 欧产日产国产精品视频| 亚洲性色视频| 久久高清一区| 日本综合精品一区| 国产日产高清欧美一区二区三区 | 国产91在线播放精品| 国产欧美一区二区三区精品酒店| 日韩精品影视| 男女男精品网站| 国产精品永久| 激情久久一区二区| 久久久夜夜夜| 亚洲一区二区动漫| 日本一区二区三区中文字幕| 国产欧美亚洲一区| 欧美二三四区| 日韩在线一二三区| 国产精品男女| 日韩不卡在线| 国产视频一区三区| 日韩av三区| 97人人精品| 在线午夜精品| 青青伊人久久| 精品国产鲁一鲁****| 久久久777| 日韩综合一区二区三区| 精品亚洲a∨一区二区三区18| 欧美精品三级在线| 波多野结衣久久精品| 日韩中文字幕1| 麻豆久久一区| 亚洲国产一区二区在线观看| 日韩精品社区| 成人亚洲一区二区| 久久亚洲电影| 国产成人免费精品| 亚洲丝袜美腿一区| 国产一区二区三区久久久久久久久| 欧美日一区二区| 欧美一级网站| 成人久久久久| 日韩高清在线一区| 亚洲精品国产嫩草在线观看 | 日韩三级久久| 高清在线一区| 蜜桃视频第一区免费观看| 国模大尺度视频一区二区| 免费看日韩精品| 都市激情国产精品| 日韩亚洲精品在线观看| 99久久激情| 久久永久免费| 丝袜美腿一区二区三区| 成人亚洲精品| 欧美久久精品|