我需要一个非常快的python树对象。查找速度比内存更重要。叶节点是我想要的值。因此,如果给定 state=NY、postion=3、hourOfDay=2 和 dayOfWeek=3,我需要快速获得值 =100。带 * 的节点是叶节点。
0) root
1) {state: [NY,LA]}
2) {howOfDay:[1,2,3,4,5], postion:[1,2,3]}
*3) {dayOfWeek:[234]} => value:100
4) {state: [FL,NV,……rest of the states]}
5) {howOfDay:[1,6,7,8,9….23]}
*6) {dayOfWeek:[1,5,6,7]} => value:120
在我的数据库中,我的数据看起来像这样,属性为 json 对象。
parent child attribute value
0 1 state NY,LA
1 2 {howOfDay:[1,2,3,4,5], postion:[1,2,3]}
2 3 dayOfWeek dayOfWeek [2,3,4] 100
0 3 state [FL,NV,……rest of the states]
4 5 howOfDay:[1,6,7,8,9….23]
5 6 dayOfWeek:[1,5,6,7] 120
那么,我应该使用什么 python 库和树结构来最好地找到一个值?如何将数据转换为最好的快速查找?