链表可以将之理解为一种结构體指针数据类型。c++的实现方式和c相比没有什么太大的区别
这里data用于储存数据,node *next用于指向下一节点的地址
由于我们平常使用的都是结构體的指针,这里就自定义一个数据类型List用于表示链表。
这里的nullptr和c语言的NULL其实差不多但是由于一些原先,使用NULL可能会造成一些异常这裏建议使用nullptr,具体原因可以自行百度
和c语言的申请空间差不多,这里使用了new来代替注意,第一个创建的节点的下一节点应该指向的是nullptr
从表头依次遍历到表尾,再申请一块空间开储存数据
先将表尾指向新建的b再让b指向nullptr。这样就成功插入节点
首先判断链表是否为空,嘫后依次遍历到对应的节点先新建一个节点b,
让它指向待删除节点a的下一节点再让节点a前一节点指向节点b后一节点(防止链表断开),最后再将节点b清空内存删除成功。删除整个链表也是一样的操作