- 178 名前:デフォルトの名無しさん mailto:sage [2008/07/15(火) 18:00:38 ]
- >>174
その元のコードだとbintreeはmallocを使わず実装してるので この課題には流用しずらい。 それに付け足すまでもなく自明に実装できる。 void delgraph(bintree tree){ static bintree_node dummy; if(!tree || tree->lt == &dummy)return; bintree lt = tree->lt,rt=tree->rt; tree->lt = &dummy; delgraph(lt); delgraph(rt); free(tree); } ようするに一度巡回したノードにはltにdummy突っ込んでおくだけ。 削除するんだから値を勝手に書き換えても問題ないだろう。
|

|