数组与矩阵
- 数组的存储地址计算
一维数组a[n]:a[i]=a+i*len
二维数组a[m][n]:
按行存储:a[i][j]=a+(i*n+j)*len
按列存储:a[i][j]=a+(j*m+i)*len
**a表示数组a[0](第一个元素)所在位置,len表示单个元素所占空间 - 矩阵计算
在矩阵中下标分别为i和j的元素,对应的一维数组的下标计算公式:代入排除法
上三角计算公式:(2n-i+1)*i/2+j,下三角计算公式:(i+1)*i/2+j
线性表
- 顺序表
- 链表
- 队列:先进先出(两端可以同时操作)
循环队列
队空条件:头=尾
队满条件:(尾+1)%总元素=头 - 栈:先进后出(只有一端可以操作)