单链表
数组模拟
e[N] 存值
ne[N] e中存值为i的下一个的下标->是访问e数组的路径
h 头结点,初始为-1,是指第一个数的下标
idx(++) 开辟新空间
1. 头插法
void insert_head(int a)
{
e[idx] = a;
ne[idx] = h;
h = idx;
idx ++;
}
2. 尾插法(不常用)
3. 在单链表中第k个数后面插入x
void add(int k,int x)
{
e[idx] = x;
ne[idx] = ne[k];
ne[k] = idx;
idx ++;
}
4. 删除第K个数
void remove(int k)
{
ne[k] = ne[ne[k]];//直接指向下一个
}
5. 遍历单链表
void tvs()
{
for(int i = h;i != -1;i = ne[i])
{
int j = e[i];//取出第k个数的值
//balabala
}
}
}