学习java×××年了,作为一个非计算机专业的程序员来说,很多东西需要自己来摸
索与研究。数据结构与算法是程序员的必修课,也是进阶的一个方法。
今天看了《Java数据结构和算法(第二版)》的第二章:数组,简单记录下。
数组分无序数组跟有序数组,两者的区别主要在:
无序数组插入比较快,但查找比较慢;
有序数组查找比较快,但插入比较慢。
造成这种现象的原因在于,无序数组插入时,直接在数组最后一个插入,不考虑其
他任何因素,查找时,由于没有任何规律,只好从第一个开始,一个一个的去比较,
即线性查找;有序数组由于已经排好序(如从小到大),可以采用二分法查找,效率
大大提高,但插入时,由于需要保持有序性,故插入时需要去比较,从而找到自己正
确的位置,而不是简单的插到最后一个。
附上用大O表示法表示数组一般操作的运行时间:
转载于:https://blog.51cto.com/flyinsky/914380