数组

数组(Array)是一种线性表数据结构。它用一组连续的内存空间,来存储一组具有相同类型的数据

随机下标访问为O(1)

$address = base + n*btye$

二维数据随机地址

$address = base + (i*btye + j)*byte$

插入删除时间复杂度

$(1 + 2 + 3 +4 ...n) / n = O(n)$

随机访问时间复杂度

$(1 + 2 + 3 +4 ...n) / n = O(n)$

小心c语言数据越界,可能是造成很难发现的bug

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;
}

会死循环哦,当然也和编译器会有点关系

LeetCode数组练习

题解

数组 41缺失的第一个正数题解

数组 42 接雨水题解

记得先自己试着做一做再看我的题解哦