对于嵌套地图,如:
Map<String, Map<String, List<String>>> map = new HashMap<String, HashMap<String, ArrayList<String>>>();
正常操作的时间复杂度是什么,例如put,remove,containsKey?
谢谢!
答案 0 :(得分:3)
时间复杂度与非嵌套HashMap
的时间复杂度相同。
每次查询仍然需要平均恒定时间。
要在嵌套Map
中搜索内部值,您需要执行两次查找 - 外部Map
中的第一次查找,如果在外部Map
中找到值,内部Map
中的第二次查找。由于两次查找都需要恒定时间,因此总查找时间保持不变。
put
,remove
等同样如此......