面試應用題 概率累加求熵

2021-09-10 23:43:36 字數 504 閱讀 6455

給定乙個整數序列,存放在陣列xs中,長度為n,請計算該序列的熵。熵的計算方法:對於乙個長度為n的序列xs,它包含m+1種不同的取值,s0,s1,…,sm,這些取值對應的出現概率分別為p0,p1,…,pm,則這個序列的熵為h(x)=-(p0log2(p0) + p1log2(p1) + … + pm*log2(pm)),其中,某個取值出現的概率p的計算方法為:這個取值出現的次數/長度n。

double

entropy

(int

xs)

else

}//拿到map中所有key的集合,用於取值

object[

] keys = map.

keyset()

.toarray()

;//求熵

for(

int p=

0;p < map.

size()

;p++

)return sum*-1

;}

面試概率題

設第一段截 x,第二段截 y,第三段 1 x y。考慮所有可能的截法。可能的截法中必須保證三條邊都是正數且小於原來邊長,則有 0 x 1,0 y 1,0 1 x y 1。畫圖可知,x,y 必須在單位正方形的左下角的半個直角三角形裡,面積為 1 2。然後考慮能形成三角形的截法。首先要滿足剛才的三個條件...

最短路徑應用題

在沙漠中有n個城邦國家 編號0 n 1 每天都有商隊從本國出發將本國商品運到其它各個國家,到達各個目的國家後又將該國的商品運回本國。在前往目的國家的路程中,商隊可能要需要從其它國家境內穿過。每穿過乙個國家商隊就需要獲得一張該國的通關卡,以便該商隊當天沿原路返回時使用。經過多年的摸索,每支商隊都已經掌...

線性表 綜合應用題

設計乙個演算法,將順序表中所有元素逆置。void reverse sqlist l 設計乙個演算法,從一給定的順序表 l 中刪除下標 i j i leq j,包括 i j 的所有元素,假定 i j 都是合法的。void delete sqlist l,int i,int j l.length del...