Трябва да има стандартна структура на данните, която да съдържа например информация за развъждане на кучета, растително генетично кръстосване и сложни човешки взаимоотношения.
Човек може да мисли, че това е лесно дървоно комбинацията от двама (или повече, за генно инженерство) родители на поколение, множество различни поколения на родителски комплект, множество движения на родители (коне от конете се съчетават с много други коне), осиновяване и т.н. правят това много фрагментирана структура.
Очаквам някой да се справи с това преди това. Какви ресурси трябва да потърся?
Отговори:
2 за отговор № 1Мисля, че това, което имате, е просто обикновена релационна база данни, където основната връзка е "child_of", "direct_descendant" и т.н.
Разбира се, конкретната структура на данните тук е ациклична и може да искате да направите транзитивни заявки (потомък на наследника на ...), които обикновено не се поддържат от стандартни SQL двигатели.
Така че, ако искате да го направите в паметта, можете да ни насочена ациклична графика (DAG).
1 за отговор № 2
Мирише като ДАГ, Ако насоченият и ацикличен е твърде ограничителен, може да искате да погледнете теория на графичните структури от данни.
Използвайки графики за абстрактни проблеми, върховете представляват обекти и краищата представляват връзката.