用樹創建一個家譜,哪種表示法比較好?

首要考慮因素是操作簡便的


為毛我首先想到了這個:

軟體真的好難做啊


用 DAG 表示生殖關係,另加一些邊表示婚姻關係。


我邪惡的認為應該用圖來表示,萬一發現亂倫關係樹表示不了了


GEDCOM文檔 (GEnealogical Data COMmunication File Format)就是專門描述家譜的,對應的,有各種語言的parser/writer

樹什麼的,too naive

C: http://gedcom-parse.sourceforge.net

Java: gedcom4j | Java library for parsing and writing genealogy data

Python: https://pypi.python.org/pypi/python-gedcom

Ruby: gedcom | RubyGems.org

以及其他各種: http://www.tamurajones.net/OpenSourceGEDCOMParsers.xhtml


用不著圖。

可參考能支持hardlink的文件系統,它有一層indirect。樹節點不直接是文件,樹的節點指向一個文件(inode)。多個樹的節點可指向同一個文件。


Graphviz 其實挺簡單的,而且真好玩


我想到一個邏輯上沒有錯誤的表現形式,但是他不是一棵樹 是一個有向圖 你看看這個表現形式能不能解決你的問題

父節點是兒子 他的左孩子是他的爸爸 右孩子是他的媽媽(指的是提供遺傳方式的雙方)

你覺得可行嗎


我做的軟體,要不你下載試試,操作簡單。

http://www.dreamgo.tech/download/jiazuzhi.html (二維碼自動識別)


可以去共渡網看看,專門的網路家譜製作網站,也是樹狀圖的,還顯示照片什麼的,很智能!www.godogodo.net


這種用信息軟體自動生成的樹狀圖等,還算可以嗎


推薦閱讀:

相同的時間複雜度下,為什麼 C# 運行速度 比 C++ 快?
在C++編程實踐中,我們是否應該放棄使用realloc這個函數?
初二學生能不能學C++?
visual studio為什麼把很多posix函數標記為deprecated?
長期用 C++ 和 MATLAB 做機器學習的你,有沒有遇到一個讓你相見恨晚的語言或包?

TAG:數據結構 | CC | Graphviz |