o(1),容器数据量的大小不影响查询效率,比如ArrayList根据下标获取值。
o(n),容器数据量越大查询效率越低,比如LinkedList根据下标取值,需要for循环LinkedList所有元素。
o(logn),最常见的就是二分查找,数据容量增加8倍,查询效率降低3倍,2^3=8。
ArrayList时间复杂度o(1)
LinkedList时间复杂度o(n)
HashMap时间复杂度分两种情况,
1、如果key的Hashcode运算不与其他key的Hashcode产生碰撞,则不形成链表,时间复杂度为o(1)
2、如果key的Hashcode运算与其他key的Hashcode产生碰撞,则形成链表,时间复杂度为o( )
算法执行所需要的临时空间不随着某个变量n的大小而变化,即此算法空间复杂度为一个常量,可表示为 O(1)
int i = 1;
int j = 2;
++i;
j++;
int m = i + j;
O(n)
int[] m = new int[n]