存储特点:1、连续内存空间和相同类型的数据 2、线性表(数据之间只有前后关系)
复杂度分析:
插入 | 删除 | 查询 | |
有序数组 | O(n) | O(1),删除多个节点,先标记,空间不够,再真正删除 | 下标随机访问O(1),值查询(二分查找O(logn)) |
无序数组 | O(1)替换技巧 | O(1) | 下标随机访问O(1) |
其他:
java容器:可以支持动态扩展,数据的插入、删除都被隐藏
int main(int argc, char* argv[]){
int i = 0;
int arr[3] = {0};
for(; i<=3; i++){
arr[i] = 0;
printf("hello world\n");
}
return 0;
}
越界问题:a[3]会被定位到i的内存地址,a[3]=0相当于i=0循环会一直持续