数组
数组是一个整齐有序的数据结构。数组的特点是顺序存储。
数组的读取
js:
let array = [5,2,4,8]
console.log( array[1] ) // 2
数组的更新
js:
let array = [5,2,4,8]
array[1] = 7
console.log( array[1] ) // 7
数组的插入
对于js而言,数组的length长度是可以变化的(但是不知道手动设置length之后数组的存储地址是不是仍然是原来的那个。) 数组的插入直接使用push或者shift方式,假如需要中间插入使用splice。 当然需要手动实现之也不难
function push(array,item){
let array1 = []
array1[0] = item
for(let i=0;i<array.length;i++){
array1[i+1] = array[i]
}
return array1
}
对于这个数组全部移动位置的做法,我们假设有数组中有n个元素,那么需要移动n次,T(n) = kn 时间和n为线性关系,时间复杂度为O(n)。空间上,需要一个 n+1 的数组,所以空间复杂度也为O(n)
数组的优势是:可以通过位置下标直接找到数据 数组的劣势是:批量移动位置的效率低