2016-05-17 25 views
-1

私はJavaのデータ構造から質問を与えているのjavaの私の割り当てに取り組んでいます:計算ツリーの深さのJavaデータ構造

質問です: ノードの合計数がある場合は、ツリーの深さを探します20.

どうすればこのファイルを見つけることができますか?誰も助けてくれますか?

+4

2つの理由から、この質問はここでは適切ではないと思われます。1.結果がどのように表示されるかは不明です。数字またはいくつかのJavaコード。あなたが宿題のための助けを求めるなら、あなたは今まで何をしたのかを説明するべきです。 個人的に。私はこれらの宿題は理由のためだと思います。あなたがそれについて考えているなら、それはあなたを助けます。単に結果を学ぶだけではそれをカットすることはできません。 –

+0

データ構造の学習中にこの課題があります。私はまた、コードやanythinhを書くかどうかを持っていない...親切にも、ノードの数が与えられた場合、ツリーの深さを見つけるコードを私にお勧めします –

答えて

2

入力:

  1. ルートノードとノードの構造。それはバイナリツリー(またはN-ary ツリー)ですか?
  2. ノードの総数(N)、及び
    ツリーK進完全木(深さ= ⌊logk(N)⌋)またはフルツリー(深さ= logk(N))か?

最初のケースでは、DFSを使用してリーフまでトラバースし、ツリーの深さ(ルートからリーフまでの最長パスの長さ)を見つけることができます。

2番目のケースでは、それは単なる算数です。

+0

あなたは最初のものを詳しく教えてもらえますか –

+0

ケース1について学ぶのに最適な場所:http://www.geeksforgeeks.org/write-ac-program-to-find-the-maximum-depth-or-height-of- a-tree/ –

+0

他の重要な質問は、「木はバランスが取れていますか?アイテムを挿入したときに自動的にバランスが取れない検索ツリーがある場合、20の整数を数字順(1、2、3、...)で挿入すると、ツリーの深さは20になります。空のポインタの束とリンクされたリスト。 – dfoverdx

1

この質問に関連するクラスまたはレッスンに関する詳細な情報を知らなくても。木をたどって深さを数えることは、基本的な答えになります。関連するトピックがあります。はい、同意

How to calculate the depth of a binary search tree

1

は、それは非常に共通の話題を尋ねたことがあります。

私の推測では、あなたのツリータイプはバイナリツリーかもしれません。バイナリツリーはノード構造が固定されています。あなたは1,2,4,8,16のように見ています。
*
* *
* * * *
あなたのケースでは、あなたのツリーの深さは、私はあなたが多くのロジックの1を書くことを願って5になります。 1つの単純なロジックは、入力番号のバイナリ表現を見つけることです。 20の場合は10100です。バイナリ表現の長さはバイナリツリーの長さです。ツリーの深さを見つける前に必要とされている

+0

はいあなたは私に答えてください –

+0

あなたの問題を解決する答えを見つけましたか? ? –

関連する問題