我正在用 C++ 编写一个程序,该程序需要快速查找和存储 IP 地址(所有 IPv4)。每个 IP 地址都有一个与之关联的数据。如果它已经存在于 trie 中,我打算将 trie 中的 IP 地址数据与新地址数据合并。如果它不存在,我打算将它作为新条目添加到 trie 中。不需要删除 IP 地址。
为了实现这一点,我需要设计一个 Patricia Trie。但是,我无法想象除此之外的设计。我似乎很天真,但我想到的唯一想法是将 IP 地址更改为二进制形式,然后使用 trie。然而,我对如何实现这一点一无所知。
如果您能帮我解决这个问题,我将非常感谢您。请注意,我确实在这里找到了类似的问题。这个问题或更具体的答案超出了我的理解,因为 CPAN 网站中的代码对我来说不够清楚。
另请注意,我的数据是以下格式
10.10.100.1:“汤姆”、“杰克”、“史密斯”
192.168.12.12:“琼斯”、“莉兹”
12.124.2.1:“吉米”,“乔治”
10.10.100.1:“迈克”、“哈利”、“詹妮弗”