我想知道按键排序字典和按值排序字典的时间复杂度是多少.
例如:
for key in sorted(my_dict, key = my_dict.get):
<some-code>
Run Code Online (Sandbox Code Playgroud)
在上面这行中,排序的时间复杂度是多少?如果假设使用了快速排序,那么平均是O(NlogN),最坏的情况是O(N*N)吗?
按值排序和按键排序的时间复杂度是不同的?因为,通过其密钥访问值只需要O(1)时间,两者应该相同?
谢谢.
我的数据如下
customer_id usage_month usage_by_product usage
1 June {"A":50, "B":50} 100
1 July {"A":50, "B":10, "C":20} 80
1 Aug {"A":50, "D":500} 550
1 Sep {"C" :30} 30
Run Code Online (Sandbox Code Playgroud)
我想编写一个查询来汇总全年的总使用量
customer_id usage_by_product usage
1 {"A": 150, "B":60 760
"C": 50, "D":500}
Run Code Online (Sandbox Code Playgroud)
是否可以在 Athena (Presto) 的地图上进行这种聚合?