Ive는 데이터를 가지고 있습니다 (데이터를 실제로 풀 때까지 존재하지는 않습니다 ...). 내 프로그램 내에서 조작 할 수 있어야합니다. 그러나 이것을 저장하기에 적합한 구조를 찾을 수 없습니다.이 "트리"데이터를 나타내는 방법은 무엇입니까?
데이터는 경로와 노드 집합을 나타냅니다. 하나의 입력 (경우에 따라서는 존재하지 않을 수 있음)이 있고 출력으로 끝나는 노드 사이에 여러 경로가 있습니다 (끝에는 출력이 없지만 출력은 항상 끝에 있음). 각 입력, 노드 및 출력에는 위치가 있으며 전체적으로 데이터를 그래픽으로 조작 할 수 있으므로 사용하는 구조가 무엇이든간에 예측할 수없는 방식으로 런타임시 내용을 쉽게 변경할 수 있어야합니다 (예 : 입력을 출력으로 변경하는 등). 다른 출력을 입력으로 만든다).
내가 각 항목 (루트 제외) 부모가 있었다 트리 구조와 자녀의 수, 예를 들면 등을 이용하여 고려: 나는 경우 등이 등으로 문제의 수를 볼 수 있습니다 그러나
Input
|
node---
| | |
| | Output
| |
| Node---Output
| |---Output
|
Node----Node
| |
Node Output
가 입력이 없거나 제거/변경됨/etc ...
이것은 시각적 인 예입니다. >는 입력 O 노드 및 [] 출력입니다. 나무는 사실에 적합한 경우 이미
을 언급 같은 트리 구조를 사용하여 제안
http://unisonmodules.co.uk/wjnewbery/data.png
@Everyone, 내가 문제를 극복 어떻게 주어진 데이터 세트도/입력을하지 않는 경우 뿌리가 아래처럼 말하라. 그러면 어떻게됩니까? 입력 노드/포인트/변경 사항 (제거 후 추가)을 사용하면 트리를 완전히 재구성해야합니까? 어떻게해야합니까?
http://unisonmodules.co.uk/wjnewbery/data2.png
나는 그래프를 살펴 보겠습니다.
왜 나무가 아닌가요? –
'tree'가 충분히 유연하지 않다고 생각하면'graph'를 시도해 볼 수 있습니다 : http://en.wikipedia.org/wiki/Graph_%28data_structure%29 –