java中映射的时间复杂度
使用映射查找字符串中每个字符的出现情况的程序的时间复杂度是多少?与其他解决方案相比,使用it是否有效java中映射的时间复杂度,java,string,maps,coding-efficiency,Java,String,Maps,Coding Efficiency,使用映射查找字符串中每个字符的出现情况的程序的时间复杂度是多少?与其他解决方案相比,使用it是否有效 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)
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);
}
HashMap
的for(int i=0;i.put()
和.get()
是O(1)
-恒定时间
此代码的时间复杂度为O(n)
,其中n
是s
.put()
和.get()
是HashMap
的恒定时间
此代码的时间复杂度为O(n)
,其中n
是s
的长度