0

そのため、生物内の化学物質の膨大なリストがあり、それらの前駆体化学物質とそれらが作成した化学物質の両方のデータが含まれています.

ある種のツリー構造が適切だと考えていました。各化学物質はノード、各親は前駆体、各子は製品です。

各ノードには複数の親または複数の子がある可能性があるため、混乱します!

ただし、この構造の主な機能は、それを作成するためのすべての化学経路を見つけることであり、ツリーがこの種の検索で最も効率的かどうかはわかりません.

私の質問は次のとおりです。このタイプのデータと操作に適したデータ構造はありますか?

4

1 に答える 1

0

あなたのデータ構造は有向グラフだと思います。

A から B へのすべての経路を見つけるための強引なアプローチは、A から始まる幅優先検索を実行し、許可されている限り多くのグラフをカバーすることです。

これにより、見つけられるパスが最短から最長の順に並べられることが保証されます。

B をヒットするたびに、そのパス内のすべてのノードを「B につながる」としてマークする必要があります。このようにして、グラフを 2 回以上走査することなく、収束経路を説明できます。

制約しない限り、グラフにループが含まれる可能性があることに注意してください。A から B に至る経路のループは無限の経路を提示するため、このケースをどのように処理するかはあなた次第です。

于 2013-01-17T02:33:08.700 に答える