学习文章和视频链接
文档讲解:
思路
1.移除链表元素:找到所要移出元素的前一个结点,然后改变其指针,即ta的next指针指向删除元素的下一个结点。
2.设计链表:链表中增加结点,需找到链表中添加位置的前一个结点,然后先让newNode的next指针指向后一个结点,再让前一个结点的next指针指向newNode,避免发生指针偏移未知;删除结点,也需找到链表中删除结点位置的前一个结点,即cur的next指针指向cur.next.next;
3.反转链表: 看起来很熟悉,但是写起来有点困难。
看完视频想法
1.移除链表元素:学到了使用虚拟头结点来统一删除元素结点的方法;
2.设计链表:学到了使用虚拟头结点删除和增加结点的统一方法,如若不使用虚拟头结点,则还需要判断结点位置是否为头结点,然后再去删除。
3.反转链表:使用双指针pre 和 cur,来依次遍历链表,然后改变其指向,从而实现链表反转。
遇到困难
1.移除链表元素:虚拟头结点的使用,之前还未接触过;
2.设计链表:由于链表没有索引index一说,故根据index结点去获取元素,有点懵,以及找到相应index位置的元素,有点难理解
3.反转链表:没有啥好的思路emmmm
今日收获
- 掌握了虚拟头结点的使用;
- 了解了链表的基础操作;
- 学到如何使用双指针来进行反转链表