我现在有两组 list,每组 list 中大概都有 1w 个 dict.结构类似这样的[{},{},{},{},{}]
两组 list 中的 dict 数量是相同的,少部分有差异,不同 list 中的 dict 靠 dict 的 id 来确定匹配 dict.
我想比较下这两组 list 中对应 dict 的 key 对应的 value 值的差异.
目前用两个 for 循环来实现感觉方法很笨,效率实在有点低,应该不是最佳实践.
各位大佬有更好的建议吗?
1
byluoluo 2017-08-24 15:37:52 +08:00
先对两个 list 排序,然后用一个 for 循环就可以了,时间复杂度就是 O(logN)。不知道有没有理解错你的意思。。
|
2
NaVient OP @byluoluo 没有理解错,但是我的数据没有排序的参考位,id 是泛指,真实数据是 case_example_xx+1 这样的 T_T
|
3
topbandit 2017-08-24 16:00:37 +08:00
1w 个 dict,能把一个 list 中的所有 dict 合并成一个 dict 麽?
|
5
forkme 2017-08-24 16:25:52 +08:00
可以先把[{},{},{},{},{}]做个转换,转换为[‘ id1 ’:{},'id2':{},'id2'{},'id4':{},'id5':{},...] , 然后再用一层 for 遍历比较?
|
6
forkme 2017-08-24 16:26:33 +08:00 1
@forkme 错了,是这样{‘ id1 ’:{},'id2':{},'id2'{},'id4':{},'id5':{},...}
|