【掲示板ご利用上の注意】

 ※題名は具体的に!
 ※学校の課題の丸投げ禁止!
 ※ソースの添付は「HTML変換ツール」で字下げ!
 ※返信の引用は最小限に!
 ※環境(OSとコンパイラ)や症状は具体的に詳しく!
 ※返信付き投稿の削除は禁止!
 ※マルチポスト(多重投稿)は慎んで!

 詳しくはこちら


本当はこんなに大きく書きたくはないのですが、なかなか守っていただけなくて…。
 守ってくださいね。お願いします。(by管理人)

C言語ソース⇒HTML形式ツール掲示板2こちら


管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧

No.22365

二分木の高さ・・・
投稿者---prin(2005/08/02 03:19:23)


 質問です。今、二分木についてプログラムを考えているのですが、節(大きさ)を数える関数は出来たのですが、高さを数える関数が出来ません・・・。節を数える関数を利用して数えようとしても上手くいきません・・・というより、よく分かりません。ヒントやら関数を参考までにお願いします。
 ちなみに、私は、節を数える関数は、
int size(Tree t)
{
int Node=0; //二分木の大きさ
if(t!=NULL){
Node = Node + size(t->left_subtree);
Node = Node + size(t->right_subtree);
Node++;
}
return Node;
}
と作り、構造体は次のように定義しました。
typedef struct node *Tree;
typedef struct node{
int data;
Tree left_subtree;
Tree right_subtree;
}Node;




この投稿にコメントする

削除パスワード

発言に関する情報 題名 投稿番号 投稿者名 投稿日時
<子記事> Re:二分木の高さ・・・ 22368 REE 2005/08/02 10:10:35


No.22368

Re:二分木の高さ・・・
投稿者---REE(2005/08/02 10:10:35)


> 質問です。今、二分木についてプログラムを考えているのですが、節(大きさ)を数える関数は出来たのですが、高さを数える関数が出来ません・・・。節を数える関数を利用して数えようとしても上手くいきません・・・というより、よく分かりません。ヒントやら関数を参考までにお願いします。

いい線行っていると思いますのでヒントを
二つの子から、それぞれ高さを取得し、大きい方に1を加えれば、そこまでの高さになります。



この投稿にコメントする

削除パスワード

管理者用メニュー    ツリーに戻る    携帯用URL    ホームページ    ログ    タグ一覧