【校招VIP】测试算法考点之链表

发布时间 2023-09-08 11:09:39作者: 校招VIP

考点介绍:

链表是一种逻辑简单的、实用的数据结构,几乎被所有程序设计语言支持。单链表的操作算法是笔试面试中较为常见的题目。

相关题目及解析内容可点击文章末尾链接查看!

一、考点试题

1.一个长度为n的单向链表,用O(1) 空间复杂度来实现倒转输出,使用最低时间复杂度

解答:思路:

读题(反射)

单向链表,直接设结点 Node head; 要倒转就需要重置链接,设记忆结点 Node p

空间复杂度为O(1) ,就是不能使用新的空间-》一边遍历,另一边不断加结点......

2.如果单链表中是有环,请找到环的入口点

解答:思路:

这是【单链表中是否有环,写出代码】的扩展题,可以划分到面试中难度最大的那一档中

没有思路,只能静下心来找环的入口点,就是找到入口点是链表的第几个结点,设这个结点q是第a个......

3.如何判断两个单链表是否相交 ?

解答:法1

对链表1中的每个节点p1,判断链表2中是否有一个节点p2指向p1

loop:p1从head1到最后一个节点

loop:p2从head2到最后一个节点......

二、考点文章

1.判断两个单链表是否相交及找到第一个交点

题目:给两个单链表,如何判断两个单链表是否相交?若相交,则找出第一个相交的节点。

这道题的思路和解法有很多,在这把这道题的解法做一个详细的总结......

2.【精挑细讲】这5道链表相关算法题,将助你告别链表问题

1、如何优雅着反转单链表

2、环形单链表约瑟夫问题最优解

3、三种方法带你优雅判断回文链表......

三、考点视频

直接插入排序和最佳复杂度

本题是校招的常见考点之一,这里考察的是简单排序的直播插入排序。首先要对熟悉排序算法本身,不要把选择和插入搞混。其次是针对每一轮的排序,考虑最少的比较次数是多少......

移动端链接:https://m.xiaozhao.vip/dTopic/detail/1167

PC端链接:https://xiaozhao.vip/dTopic/detail/1167