java 中地图的时间复杂度
Time Complexity of a map in java
使用映射查找字符串中每个字符出现的程序的时间复杂度是多少?与其他解决方案相比使用它是否有效?
for(int i=0; i<s.length(); i++)
{
if(map.containsKey(s.charAt(i)))
map.put(s.charAt(i),map.get(s.charAt(i))+1);
else
map.put(s.charAt(i),1);
}
.put()
和 HashMap
的 .get()
是 O(1)
- 常数时间。
这段代码的时间复杂度是O(n)
,其中n
是s
的长度。
使用映射查找字符串中每个字符出现的程序的时间复杂度是多少?与其他解决方案相比使用它是否有效?
for(int i=0; i<s.length(); i++)
{
if(map.containsKey(s.charAt(i)))
map.put(s.charAt(i),map.get(s.charAt(i))+1);
else
map.put(s.charAt(i),1);
}
.put()
和 HashMap
的 .get()
是 O(1)
- 常数时间。
这段代码的时间复杂度是O(n)
,其中n
是s
的长度。