亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

你從這個破碎的隨機洗牌中得到了什么分布?

你從這個破碎的隨機洗牌中得到了什么分布?

桃花長相依 2019-08-30 17:11:14
著名的Fisher-Yates shuffle算法可用于隨機置換長度為N的陣列A:For k = 1 to N    Pick a random integer j from k to N    Swap A[k] and A[j]我一遍又一遍地告訴我的一個常見錯誤是:For k = 1 to N    Pick a random integer j from 1 to N    Swap A[k] and A[j]也就是說,不是從k到N選擇一個隨機整數,而是從1到N中選擇一個隨機整數。如果你犯了這個錯誤怎么辦?我知道由此產生的排列不是均勻分布的,但我不知道對于最終的分布有什么保證。特別是,有沒有人有關于元素最終位置的概率分布的表達式?
查看完整描述

3 回答

?
慕沐林林

TA貢獻2016條經驗 獲得超9個贊

讓我們說吧

  • a = 1/N

  • b = 1-a

  • i(k)是第th個元素i交換后的概率矩陣k。即問題的答案“ 交換k后的位置是i什么?”。例如B 0(3)= (0 0 1 0 ... 0)和B 1(3)= (a 0 b 0 ... 0)。你想要的是每個k的B N(k)。

  • i是一個NxN矩陣,在第i列和第i行中有1,在其他地方為零,例如:

https://img1.sycdn.imooc.com//5d68e8c40001438001950121.jpg

  • 是單位矩陣,但是與該元素X = Y = I歸零。例如,對于i = 2:

https://img1.sycdn.imooc.com//5d68e8c60001378d01040088.jpg

  • 一個

https://img1.sycdn.imooc.com//5d68e8ca0001628c01140016.jpg

然后,

https://img1.sycdn.imooc.com//5d68e8cc00015e9e02110019.jpg

但是因為B N(k = 1..N)形成單位矩陣,所以任何給定元素i最后都在位置j的概率由矩陣的矩陣元素(i,j)給出:

https://img1.sycdn.imooc.com//5d68e8ce0001252601430016.jpg

例如,對于N = 4:

https://img1.sycdn.imooc.com//5d68e8d1000150fc01470089.jpg

作為N = 500的圖表(顏色等級為100 *概率):

https://img1.sycdn.imooc.com//5d68e8d30001308a04800480.jpg

所有N> 2的模式都是相同的:

  • 第k個元素最可能的結束位置是k-1

  • 至少可能的終止位置為k?<N * LN(2) ,位置1否則


查看完整回答
反對 回復 2019-08-30
  • 3 回答
  • 0 關注
  • 722 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號