国产成人精品久久免费动漫-国产成人精品天堂-国产成人精品区在线观看-国产成人精品日本-a级毛片无码免费真人-a级毛片毛片免费观看久潮喷

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

java - 多叉樹求值,程序高手,算法高手看過來

瀏覽:119日期:2023-10-12 14:04:03

問題描述

遇到一道筆試題,完全沒思路,求助。。。。

已知類定義如下

class Node { public Double value; public List<Node> children;}

輸入node滿足以下條件:1 node的value是大于0的浮點數2 node的下級節點(以及更下級節點)的value可能是null或者大于0的浮點數程序的作用如下:1 將樹形結構里面所有value是null的均設為大于0的浮點數2 非葉子節點(即children數量大于0的節點)的value均等于它的children的value之和

public void doit(Node node){ ......}

示例java - 多叉樹求值,程序高手,算法高手看過來解答java - 多叉樹求值,程序高手,算法高手看過來

這個問題要如何解答?

已經有高手答出來了,綜合一下下面兩人的答案就是完美答案。其實就是我采納那個答案里面把均分改為隨機就很完美了

問題解答

回答1:

沒有寫具體代碼,說一下思路吧首先,把問題分為2步Step1、確定非葉子節點的值Step2、確定葉子節點的值先處理Step1,處理完Step1之后,Step2就不用多說了,根據父節點的值均分即可。對于Step1,step1-1: 由下向上遍歷各個非葉子節點,通過對其子節點求和,確定其最小值。如最右側的子樹,最小值為5.5。step1-2: 由上向下,逐層確定非葉子節點,為方面描述,命名[100]為第一層,[10,20,?,?]為第二層,以此類推。根據step1-1的結果,第二層的最小值為[10,20,>60,>5.5],將100減去最小值之和,然后均分,結果為[10,20,62.25,7.75]step1-3: 同上,確定第三層,結果為[5.5, 4.5] [9.5, 5.25, 5.25] [60, 1.125, 1.125] [6.625,1.125]這里最后一組較特別,需要考慮到7.75分配的時候,其左下已經有5.5了,所以7.75里面可自由支配的數為7.75-5.5=2.25,將2.25均分到兩邊,結果[6.625,1.125]step1-4: 最后一層相信不用再羅嗦了,其實就是step2,均分下來就好。

回答2:

剛剛看了一下這道題目,覺得很有意思。然后思考了一下,提出以下問題。我的思路的話就是遞歸。

分層次遍歷,在每層的時候把確定的值加起來,為空的節點們去分父節點的值減去這部分確定的值的和(題目的要求)。然后如果不是葉節點的節點按照上述方法遞歸。

但是確定每個節點的值得時候,如某些葉子節點的時候,我們需要隨機給他們賦值,他們的值有些受到父節點約束,有些不收父節點約束比如第二層的第三個節點的兩個葉子節點,如果我們賦給他們的值使得他們的父節點不滿足要求了,這就不符合題意了。所以我想的是在每次確定值得時候傳入這些節點的取值范圍。這些范圍的確定又會導致一些問題,問題又會變得復雜。

范圍確定,每個空節點的最大值肯定是父節點的值減去同行子節點的值的和,最小取值肯定是大于其子節點的有值元素的和。因為只有確定了某個范圍,其葉子節點的一些隨機值的取法不會導致其余節點不符合題意。總的意思來說每個同父節點的空節點的取值互相有約束,其中一個節點的取值雖然滿足自身,但是會使得其余節點不滿足要求。舉個例子:java - 多叉樹求值,程序高手,算法高手看過來

如果這樣取值,則局部滿足,會導致其他節點的取值不滿足要求。所以在沒約束的情況下可能會導致意想不到的結果。我們需要去確定這些范圍。

綜上,這只是我的一些思考后的一些想法,也許有錯誤的地方歡迎指正。

標簽: java
主站蜘蛛池模板: www.久久视频| 本道久久综合88全国最大色 | 国产成人久久精品一区二区三区 | 热re91久久精品国产91热 | 久久亚洲成人 | 亚洲精品久一区 | 欧美在线视频免费观看 | 亚洲香蕉久久一区二区三区四区 | 久草在线在线观看 | 毛片a级三毛片免费播放 | 麻豆国产96在线 | 日韩 | 久久精品网站免费观看 | 欧美亚洲国产日韩一区二区三区 | 精品国产一区二区三区国产馆 | 国产一级做a爰片在线 | 女人张开腿让男人桶视频免费大全 | 免费看一区二区三区 | 加勒比一区二区 | 呦女精品视频 | 亚洲免费大全 | 手机看片国产欧美日韩高清 | 亚洲三及片 | 精品高清国产a毛片 | 久草在线看 | 成年人毛片 | 日本一级特大毛片 | 99久久精品费精品国产一区二 | 国产欧美日韩一区二区三区 | 在线观看免费为成年视频 | 国内自拍第五一页 | 99精品热女视频专线 | 夜色综合| 九九手机视频 | 91精品一区二区三区在线播放 | 91最新网站 | 久久久久欧美国产精品 | 国产99视频精品免视看7 | 久久精品国产一区二区三区 | 久久精品国产第一区二区 | 另类专区国产在线视频 | a级成人毛片免费视频高清 a级高清观看视频在线看 |