基本的なバイナリ ツリー プロシージャ isempty(bt)、root(bt)、left(bt)、および right(bt) が既にあるとします。二分木 bt が葉ノードであれば真を返し、そうでなければ偽を返す手続き isLeaf(bt) を書きなさい。
これは私が持っているものです:
proc isLeaf(bt)
if (isEmpty(bt))
error('The binary tree is empty.');
elseif (left(bt) < right(bt))
return true;
else return false;
次に、バイナリ ツリー bt の葉の数を返すプロシージャ numLeaves(bt) を記述します。
これは私が持っているものです:
proc numLeaves(bt)
if (isEmpty(bt))
error ('The binary tree is empty.');
elseif (count left(bt) + right(bt));
return (left(bt) + right(bt);
訂正していただけますか?