左葉の404合計
イージー
与えられたバイナリツリー内のすべての左葉の合計を検索します。
例:
3 / \ 9 20 / \ 15 7 それぞれ値9および15を有するバイナリツリー内の2枚の左葉があります。24を返します。
パッケージleetcode.easy。 / ** *バイナリツリーノードの定義。パブリッククラスのTreeNode {int型のval; ツリーノード *左; TreeNodeの右; ツリーノード(INT X){ヴァル= X。}} * / パブリッククラスSumOfLeftLeaves { 公共のint sumOfLeftLeaves(ツリーノードのルート){ (ヌル==ルート)場合、{ 0を返します。 } IF(!root.left = NULL && root.left.left == NULL && root.left.right == NULL){ 戻りroot.left.val + sumOfLeftLeaves(root.right)。 }他{ 戻りsumOfLeftLeaves(root.left)+ sumOfLeftLeaves(root.right)。 } } @ org.junit.Test 公共ボイド試験(){ ツリーノードTN11 =新しいツリーノード(3)。 ツリーノードTN21 =新しいツリーノード(9)。 ツリーノードTN22 =新しいツリーノード(20)。 ツリーノードTN33 =新しいツリーノード(15)。 ツリーノードTN34 =新しいツリーノード(7)。 tn11.left = TN21。 tn11.right = TN22。 tn21.left = NULL; tn21.right = NULL; tn22.left = TN33。 tn22.right = TN34。 tn33.left = NULL; tn33.right = NULL; tn34.left = NULL; tn34.right = NULL; System.out.print(sumOfLeftLeaves(TN11))。 } }