//点击后出现烟花效果

数组模拟链表

单链表


数组模拟链表比动态链表效率更高。


\(head\) 作为指向头结点的指针,\(idx\) 作为当前结点索引,每次执行完操作都要idx++;

数组 \(e[]\) 用来保存当前结点的值\(ne[]\) 用来保存指向的下一个结点编号


\(-1\) 作为起始,表示结点为空,\(idx\)\(0\) 开始,第一个添加的结点编号为 \(0\)


在头结点插入就是将 \(idx\) 指向的结点变成 \(head\) 所指向的结点,再将 \(head\) 指向 \(idx\) 这个结点。


在编号为 \(k\) 的结点后插入同理。





删除 \(k\) 结点后面一个结点,就直接将 \(k\) 结点所指向的结点变为原本 \(k\) 指向的结点的下一个结点,即ne[ne[k]]


posted @ 2023-03-11 10:25  JunieXD  阅读(23)  评论(0)    收藏  举报