scala 可以进行映射 (ADT) 所以我们可以这样映射 ('A', 3) = (Char, Int)
在 C 中怎么样?
我想映射并检查两个映射之间的所有关系和比较
'a' = 1, 'b' = 3, 'c' = 4 由 abbbcccc 映射
并且 'e' = 1 , 'b' = 3, 'g' = 4 是由 bbbegggg 映射
我想找到这些关系 ('a' , 1) 不在 ('e' = 1 , 'b' = 3, 'g' = 4) 中。那么,这张 map ('b' = 3) 在 ('e' = 1 , 'b' = 3, 'g' = 4) 这张 map 中。并计数++;
我如何制作这些类似的 map ?我可以用数组来做吗?
最佳答案
不是在纯 C 中,不是。
您可以用一两个数组实现一个,但您必须实现哈希算法或某种比较和搜索算法。或者,您可以使用某种搜索树来实现它。
如果您不想编写 map 数据类型,则必须使用具有该功能的库。 GLib 包含一个:http://developer.gnome.org/glib/2.30/glib-Hash-Tables.html
关于c - C中的映射算法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8166280/