C/C++の宿題片付けます 165代目
■ このスレッドは過去ログ倉庫に格納されています
0369デフォルトの名無しさん
2013/07/06(土) NY:AN:NY.AN[2] 問題文(含コード&リンク):()
・部分木p から最小のキーを持つノードを削除した部分木を返す関数deleteMinNode を作成せよ.
・上の資料等 を参考にして,コマンドライン引数で指定したキーを持つノードを2 分探索木から削除するプログラムを作成せよ.
ただし,プログラム引数の「整数1 整数2 …」の各値をキーに持つノードを順に挿入して2 分探索木を生成し,
deleteNode 関数を使ってコマンドライン引数の「X1 X2 …」の各値をキーに持つノードを順に2 分探索木より削除する.
また,次のようなプログラム実行例を想定している.
% ./a.out 9 5 11 3 4 15 10 -- 4 5 9
入力データ [9 [5 3 _ 4] _ ] [ 11 10 15 ] ]
deleteNode(4)
==> [9 [5 [ 3 _ _ ] _ ] [ 11 [10 _ _ ] [ 15 _ _ ] ] ]
deleteNode(5)
==> [9 [ 3 _ _ ] [ 11 [ 10 _ _ ] [ 15 _ _ ] ] ]
deleteNode(9)
==> [10 [ 3 _ _ ] [ 11 _ [ 15 _ _ ] ] ]
%
% ./a.out 9 5 11 3 4 15 10 -- 8
入力データ [9 [5 3 _ ] [ 11 _ 15 ] ]
deleteNode(8)
deleteNode: 指定キーのノードがありません
[3] 環境
[3.1] OS: (Windows/Linux/等々) linux
[3.2] コンパイラ名とバージョン: (gcc 3.4 VC 6.0等)gcc
[3.3] 言語: (C/C++/どちらでも可 のいずれか) C
[4] 期限: ([yyyy年mm月dd日hh:mmまで] または [無期限] のいずれか) 7月10日
[5] その他の制限: (どこまで習っているか、標準ライブラリは使ってはいけない等々)
■ このスレッドは過去ログ倉庫に格納されています