手记

【九月打卡】第14天 前端面试技能拼图1

课程名称:2周刷完100道前端优质面试真题
课程章节:第2章 前端面试技能拼图1 :数据结构和算法(上),大厂面试必考
主讲老师:双越

课程内容:

今天学习的内容包括:
2-9 使用 JS 反转单向链表-什么是链表——链表是一种零散的类似数组的物理结构。
2-10 使用 JS 反转单向链表-分析解题思路——使用三个指针进行链表的翻转。
2-11 使用 JS 反转单向链表-代码演示和单元测试——书写反转代码和单元测试。

课程收获:

JS 反转单向链表

什么是链表
  • 链表是一种物理结构(非逻辑结构),类似于数组。
  • 数组需要一段连续的内存区间,而链表是零散的。
  • 链表节点的数据结构{ value, next?, prev? }。
链表 vs 数组
  • 都是有序结构。tips:对象是无序的
  • 链表:查询慢O(n),新增和删除快O(1)。
  • 数组:查询快O(1),新增和删除慢O(n)。
解题思路
  • 反转,即节点next 指向前一个节点。
  • 但这很容易造成nextNode的丢失。
  • 需要三个指针prevNode curNode nextNode。
划重点
  • 链表,链表 vs 数组。
  • 如何让nextNode不丢失。
  • 链表的代码逻辑比较繁琐,调试成本高。

今天的 学习了 反转单向链表,通过三个指针进行链表的反转,之前也有写过反转链表,但是时间异常就忘记了,这是学习的一个大问题,学完就忘,太难了。

下一步就是 学习 链表和数组哪个实现队列更快了。今天学习就先到这里吧。

坚持打卡,坚持学习,未来可期,加油😀~

0人推荐
随时随地看视频
慕课网APP