
都合の良い質問で申し訳ありません。
C言語でメニューを構成したいと思います。
(基本的なアルゴリズムには言語は関係ないと思いますが・・・)
階層は5階層程度、各階層が2~5メニューを考えております。
初期は当然トップメニューの先頭項目、
トップメニューの項目の内いずれかが選択されたらそれに応じた2階層目に移動、
2階層目の項目の内いずれかが選択されたらそれに応じた3階層目に移動・・・
と考えていたら、その管理方法に頭が痛くなってきました。(^^ゞ
今どの階層の何項目に居て、その下位層にはどんな項目がある等を効率良く管理する方法は無いもんでしょうか?
ツリー構造?リスト構造?
参考になるサイト等があれば、ご教示頂けると有り難いです。
よろしくお願いします。
No.2ベストアンサー
- 回答日時:
何階層のメニューになるか分からないようなものをサポートするのであれば「再帰的なツリー構造」でしょう。
同じ階層に属するメニュー項目はリスト構造で管理できますから、あわせれば「『リスト構造の再帰的なツリー』構造」でしょうか。5階層のうち2階層目が・・・3階層目が・・・と考えるから面倒なのです。自身を下位階層に持つことのできる構造を1階層分だけ作成すれば、それを繰り返し適用することで何階層にでもできます。(ファイル/フォルダ構造と同じです。)
No.1
- 回答日時:
直接の回答ではないですが、
5階層と言うことは、AAAメニューのBBBを選択しその中のCCC項目を選択しその中のDDD項目を選択しその中のEEE項目を選択するって事ですか?
ん~。
使う立場で言わせていただければ、2階層か3階層ぐらいがベターだと思いますけど?
あまり階層が深いと、面倒に感じないかなぁ。
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
バッチでcsvファイルの指定のカ...
-
COBOLについて
-
リストビューの項目の内容を変...
-
php mysql で WHERE句内に変数...
-
DataGridView 右詰め
-
初心者)DataGridViewの入力桁...
-
DataViewで複数条件の...
-
フィルターかけた後、重複を除...
-
SELECT 文 GROUP での1件目を...
-
外部参照してるキーを主キーに...
-
差し込み後、元データを変更し...
-
SQLで列名を変数にできないでし...
-
エクセルで最後の文字だけ置き...
-
Outlook 送受信エラー
-
エクセルの関数について教えて...
-
SQLServerで文字列の末尾からあ...
-
カーソル0件の時にエラーを発生...
-
datetime型でNULL値を入れたい。
-
for whichの使い方
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
SQLで特定の項目の重複のみを排...
-
php mysql で WHERE句内に変数...
-
リストビューの項目の内容を変...
-
DataViewで複数条件の...
-
COBOLについて
-
バッチでcsvファイルの指定のカ...
-
DataGridView 右詰め
-
comboxのリストをファイルから...
-
Auto Filter
-
COBOL プログラミング
-
FORMで送信された項目名の格納...
-
初心者)DataGridViewの入力桁...
-
入門書のPHPサンプル内で、MySQ...
-
fgetcsvでCSVを取得した際のnul...
-
メニュー構築
-
重複したデータのみを取得する方法
-
C# リストビューの値を取得
-
ランダムな数字の生成
-
VB6でActiveReport1.5Jを使って...
-
HSPでプログラミングを始めたい。
おすすめ情報