最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

概率的問題:使用遞歸與多次試驗模擬的分析

 更新時間:2013年05月08日 15:49:55   作者:  
以下對概率的問題:使用了遞歸和多次試驗模擬。需要的朋友參考下

多次枚舉:

實例1

口袋中有5只紅球,4只白球。隨機從口袋中取出3個球,取出1個紅球2個白球的概率

復制代碼 代碼如下:

<SPAN style="FONT-SIZE: 18px"> srand( (unsigned)time( NULL ) );
 int n = 0;
 for(int i=0; i<100000; i++)
 {
  char x[] = {1, 1, 1, 1, 1, 2, 2, 2, 2};//5個紅球用5個1表示 4個白球用4個2表示
  int a = 0;  // 取到的紅球的數(shù)目
  int b = 0;  // 取到的白球的數(shù)目

  for(int j=0; j<3; j++)  //取3個球進行3次循環(huán)
  {
   int k = rand() % (9-j);  //下標的確定  確定范圍  9-j 是重點
   if(x[k]==1)
    a++;
   else
    b++;

   x[k] = x[9-j-1]; //將取出數(shù)向后移動
  }
  if(a==1 && b==2)  n++;//取出1個紅球2個白球時進行計數(shù)
 }
 printf("概率=%f\n", n/100000.0*100);</SPAN>


實例2
復制代碼 代碼如下:

<SPAN style="FONT-SIZE: 18px">#define N 30
......
 int a[N];
 srand( time( NULL ) );
 int n = 0;
 for(int k=0; k<10000; k++)
 {
  for(int i=0; i<N; i++)
   a[i] = rand() % 365;
  bool tag = false; // 假設沒有相同
  for(i=1; i<N; i++)
  {
   for(int j=0; j<i; j++)
   {
    if(a[i]==a[j])
    {
     tag = true;
     break;
    }
   }
   if(tag) break;
  }
  if(tag) n++;
 }
 printf("%f\n", 1.0 * n / 10000 * 100);
</SPAN>

遞歸:

某個袋子中有紅球m個,白球n個?,F(xiàn)在要從中取出x個球。紅球數(shù)目多于白球的概率

下面的代碼解決了這個問題。其中的y表示紅球至少出現(xiàn)的次數(shù)。

這與前文的問題是等價的。因為如果取30個球,要求紅球數(shù)大于白球數(shù),則等價于至少取出16個紅球。

復制代碼 代碼如下:

<SPAN style="FONT-SIZE: 18px">/*
   m: 袋中紅球的數(shù)目
   n: 袋中白球的數(shù)目
   x: 需要取出的數(shù)目
   y: 紅球至少出現(xiàn)的次數(shù)
*/

double pro(int m, int n, int x, int y)
{
 if(y>x) return 0;
 if(y==0) return 1;  //對y沒有要求
 if(y>m) return 0;
 if(x-n>y) return 1;  //把白球全部取出,剩下就是紅球 紅球比至少取出還多,概率為1
 double p1 = pro(m-1,n,x-1,y-1) ; 
 double p2 = pro(m,n-1,x-1,y);
 return (double)m/(m+n) * p1 + (double)n/(m+n) * p2;
}</SPAN>


相關文章

  • C++ min/max_element 函數(shù)用法詳解

    C++ min/max_element 函數(shù)用法詳解

    這篇文章主要介紹了C++ min/max_element 函數(shù)用法,本文給大家介紹的非常詳細,具有一定的參考借鑒價值,需要的朋友可以參考下
    2020-02-02
  • C語言基本排序算法之插入排序與直接選擇排序實現(xiàn)方法

    C語言基本排序算法之插入排序與直接選擇排序實現(xiàn)方法

    這篇文章主要介紹了C語言基本排序算法之插入排序與直接選擇排序實現(xiàn)方法,結合具體實例形式分析了插入排序與直接選擇排序的定義、使用方法及相關注意事項,需要的朋友可以參考下
    2017-09-09
  • C++構造析構賦值運算函數(shù)應用詳解

    C++構造析構賦值運算函數(shù)應用詳解

    構造函數(shù)主要作用在于創(chuàng)建對象時為對象的成員屬性賦值,構造函數(shù)由編譯器自動調(diào)用,無須手動調(diào)用;析構函數(shù)主要作用在于對象銷毀前系統(tǒng)自動調(diào)用,執(zhí)行一 些清理工作
    2022-09-09
  • OpenGL實現(xiàn)邊緣填充算法

    OpenGL實現(xiàn)邊緣填充算法

    這篇文章主要為大家詳細介紹了OpenGL實現(xiàn)邊緣填充算法,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2020-02-02
  • JS調(diào)用C++函數(shù)拋出異常及捕捉異常詳解

    JS調(diào)用C++函數(shù)拋出異常及捕捉異常詳解

    這篇文章主要介紹了js調(diào)用C++函數(shù)的方法示例,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧
    2021-08-08
  • C++?折疊參數(shù)包詳解(悄然增強編程效率)

    C++?折疊參數(shù)包詳解(悄然增強編程效率)

    折疊參數(shù)就是一個參數(shù)包, 代表是多個未知,tuple元組就是一個折疊參數(shù)的使用,這篇文章主要介紹了C++?折疊參數(shù)包悄然增強編程效率,需要的朋友可以參考下
    2023-05-05
  • C++實現(xiàn)LeetCode(27.移除元素)

    C++實現(xiàn)LeetCode(27.移除元素)

    這篇文章主要介紹了C++實現(xiàn)LeetCode(27.移除元素),本篇文章通過簡要的案例,講解了該項技術的了解與使用,以下就是詳細內(nèi)容,需要的朋友可以參考下
    2021-07-07
  • C++靜態(tài)庫與動態(tài)庫文件的生成和使用教程

    C++靜態(tài)庫與動態(tài)庫文件的生成和使用教程

    庫文件是計算機上的一類文件,可以簡單的把庫文件看成一種代碼倉庫,它提供給使用者一些可以直接拿來用的變量、函數(shù)和類,下面這篇文章主要給大家介紹了關于C++靜態(tài)庫與動態(tài)庫文件的生成和使用的相關資料,需要的朋友可以參考下
    2023-03-03
  • C語言之整數(shù)與浮點數(shù)運算的類型轉換規(guī)則詳解

    C語言之整數(shù)與浮點數(shù)運算的類型轉換規(guī)則詳解

    這篇文章主要介紹了C語言之整數(shù)與浮點數(shù)運算的類型轉換規(guī)則,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2025-03-03
  • 詳解Qt如何加載libxl庫

    詳解Qt如何加載libxl庫

    這篇文章主要介紹了詳解Qt如何加載libxl庫,文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友們下面隨著小編來一起學習學習吧
    2021-03-03

最新評論

平塘县| 筠连县| 乐业县| 兴安盟| 宁波市| 会理县| 西城区| 乌拉特中旗| 平武县| 潮安县| 广德县| 汉中市| 广南县| 遵义县| 隆子县| 道孚县| 宁海县| 自贡市| 淮南市| 张北县| 河源市| 洞头县| 白河县| 马山县| 菏泽市| 邮箱| 竹北市| 镇沅| 安仁县| 神池县| 辉县市| 金湖县| 施秉县| 三门峡市| 舞阳县| 凉城县| 赤水市| 林甸县| 保山市| 元江| 宁波市|