关于HASHMAP 和while循环的查询效率问题
例如:
我想查询某个值为a的对象
第一种方式:将集合存在hashmap map里面
Object o = map.get(a);
第二种方式: 是将结合存到Iterator iter里面
while(iter.hasNext()){
b = iter.next()
if(a == b){
Object o = b;
break;
}
}
请问这俩的执行效率哪个高,他们的算法的时间复杂度分别是多少。
hashMap的时间复杂度是O(1)
while是多少? 我怎么觉得也是1呢
请高手指点。
我想查询某个值为a的对象
第一种方式:将集合存在hashmap map里面
Object o = map.get(a);
第二种方式: 是将结合存到Iterator iter里面
while(iter.hasNext()){
b = iter.next()
if(a == b){
Object o = b;
break;
}
}
请问这俩的执行效率哪个高,他们的算法的时间复杂度分别是多少。
hashMap的时间复杂度是O(1)
while是多少? 我怎么觉得也是1呢
请高手指点。
...全文
相关推荐
java快速查询手册
手册首先从Java语言的基础部分入手,包括语法结构、变量类型、运算符、控制流程(如if语句、for循环、while循环)、函数的定义与调用等。
JAVA快速查询手册.
- 控制流:包括条件语句(if, switch)、循环(for, while, do-while)和跳转语句(break, continue)。 - 函数:定义、调用以及参数传递。
搜米java程序员笔试题面试题.pdf,这是一份不错的文件
选择题1的代码是一个do-while循环,其中a的初始值为0,所以在进入循环之前,条件a>0不成立,因此不会执行循环体内的任何操作,c的值保持不变,答案是A.0。2.
HashMap和链表的查找效率比较
**查找效率比较**- **HashMap**: 在理想情况下,即没有散列冲突时,`HashMap`的查找速度非常快,几乎可以达到常量时间。
jdk1.7 HashMap中的致命错误:循环链表
首先,它改用了尾插法,避免了在resize时导致的循环链表问题。其次,当链表长度超过一定阈值(8)时,HashMap会将链表转换为红黑树,以减少查找时间,进一步提高查询效率。


Web 开发
