根据《算法竞赛进阶指南》学习DP,首先要学会搜索,搜索这章显示的前置知识:
我学过的:栈、队列
没学过:链表
类似的:
数组——数据结构
优点:支持随机访问
缺点:不支持在任意位置插入或删除元素
链表——数据结构
优点:支持在任意位置插入或删除
缺点:按顺序依次访问其中元素
链表的类型:struct
可存储任意数据
prev和next两个指针指向前后相邻的两个节点,构成双向链表结构
可能会出现的问题:左右两端或空链表中访问越界
解决方案:建立额外两个节点head和tail代表链表头尾,实际数据节点存储在head和tail之间,减少链表边界处的判断
两种实现形式