0

次のレベルの階層があるとしましょう。

  • レベル1

    • ステージ1
    • ステージ2
    • ステージ3
  • レベル2

    • ステージ4
    • ステージ5
    • ステージ6
  • レベル3

    • ステージ7
    • ステージ8
    • ステージ9

ステージ5にはレベル2があるので、ステージ番号がわかっている場合、プログラムでレベル番号を見つけるにはどうすればよいですか?

4

3 に答える 3

2

うまくいけば、親ノードへのポインタがあります。

親ノードがなくなるまで、そのポインタをたどり続けます。ルートノードが見つかりました。あなたがあなたの深さを得るためにあなたが親までのポインターをたどらなければならない回数を数えなさい。

于 2012-07-27T01:36:39.293 に答える
1

次の式を使用して、特定のステージに基づいて現在のレベルを見つけることができます。

level = ceil(stage / 3)

例:

ceil(5 / 3) = 2
ceil(9 / 3) = 3
ceil(1 / 3) = 1

ただし、この回答は、各レベルに正確に3つのステージがある場合にのみ機能します。

于 2012-07-27T01:49:10.343 に答える
0

上手

Pythonを使用している場合、それは非常に簡単です。

>>> d = { 'level 1' : [ 'stage 1', 'stage 2', 'stage 3' ], 
...       'level 2' : [ 'stage 4', 'stage 5', 'stage 6' ],
...       'level 3' : [ 'stage 7', 'stage 7', 'stage 9' ],
...     }
>>> for key, val in d.items():
...     if 'stage 5' in val:
...             print key

ありがとうございました

于 2012-07-27T05:18:28.943 に答える