数组
数组是一种线性表结构。用一块连续的内存空间来存储相同类型的一组数据。
线性表:存在唯一的开始和结束元素,并且除第一个元素没有前驱,最后一个元素没有后继,其余元素均存在唯一的前驱和后继
因为连续的存储空间使得数组的随机访问的时间复杂度为O(1),但插入和删除为了保证数据的连续性,就需要做大量的数据搬移工作,所以时间复杂度为O(n)。
数组地址的计算
l o c [ i , j ] = l o c [ 0 , 0 ] + ( n × i + j ) L loc[i,j]=loc[0,0]+(n \times i +j)L loc[i,j]=loc[0,0]+(n×i+j)L
对于 m × n m\times n m×n的数组,loc[i,j]是aij的存储位置。loc[0,0]即数组的首地址,L为数据类型所需要的存储空间。
相关思考
数组的越界问题
#include <stdio.h>
int main()
{
int i =0;
int arr[3]={
0};
for(;i<=3;i++){
arr[i]=0;
printf("hel