我有四組數據:有沒有適合解決這個問題的數據結構?
//group 1
2 2 6
2 2 7
2 3 5
2 3 6
2 3 7
3 2 5
3 2 6
3 2 7
3 3 4
3 3 5
3 3 6
3 3 7
...
...
7 2 2
7 2 3
7 2 5
7 2 7
7 3 2
7 5 2
7 6 2
//group 2
2 2 2
2 2 3
2 2 4
2 2 5
2 3 2
2 3 3
3 3 2
3 3 3
3 4 2
...
...
5 2 2
//group 3
2 4
2 5
3 3
3 4
3 5
3 6
...
...
7 2
//group 4
6
7
8
我想要做的是給定輸入號碼,給所有可能的結果。 例子可以幫助解釋什麼,我想做的事: 說輸入爲7,則輸出應該是以下幾點:
from group 1
7 2 2
7 2 3
7 2 5
7 2 7
7 3 2
7 5 2
7 6 2
from group 2
//nothing
from group 3
7 2
from group 4
7
然後,添加第二個輸入2(所以總投入爲7 2)那麼結果應該是
from group 1
7 2 2
7 2 3
7 2 5
7 2 7
from group 2
//nothing
from group 3
7 2
from group 4
//nothing
然後,添加一個第三輸入端5(因此總輸入爲7 2 5),那麼結果應該是
from group 1
7 2 5
from group 2
//nothing
from group 3
//nothing
from group 4
//nothing
這似乎是我需要一個森林(幾棵樹),對嗎? 如果是這樣,是否有任何良好的C++樹實現這個任務的森林,或者我自己更好地手工製作一個?
很多謝謝
您需要實際描述您正在嘗試使用的*算法*。 – Puppy
如果我理解正確,您希望輸出包含您的輸出的所有行作爲前綴,對嗎? – Giorgio
看起來像*前綴樹*。在C++標準庫中沒有一個,但我相信你會在互聯網上找到一個好的實現。 –