3 つのルールがあるとします。
- オブジェクトの foo プロパティが 1 の場合、"foo" を出力します。
- オブジェクトの bar プロパティが 1 の場合、"bar" を出力します。
- オブジェクトの foo プロパティが 1 で bar プロパティが 1 の場合、「foo と bar の両方」を出力します。
このシナリオでは、アルファ ノードの構造はどのようになりますか? ルール 1 と 2 を考えると、次のようになる例を見てきました。
foo == 1 - "foo"
root<
bar == 1 - "bar"
そして、与えられた 3:
root - foo == 1 - bar == 1 - "both foo and bar"
そして、与えられた 3 と 1:
"foo"
root - foo == 1 <
bar == 1 - "both foo and bar"
3、2、1 を指定すると、次のようになります。
foo == 1 - "foo"
root <
"bar"
bar == 1 <
foo == 1 - "both foo and bar"
また
foo == 1 - "foo"
/
root-- bar == 1 - "bar"
\
foo == 1 - bar == 1 - "both foo and bar"
それとも他の方法ですか?