抱歉,您的浏览器无法访问本站

本页面需要浏览器支持(启用)JavaScript


了解详情 >

经典面试题:环形链表的判断与定位

今天这篇文章要讲解的题目是「环形链表」的两道题目: LeetCode 141. Linked List Cycle(Easy) LeetCode 142. Linked List Cycle II(Medium) 两道题目都分别有「哈希表」的朴素解法,以及「双指针」的巧妙解法。非常适合大家掌握面试中的答题思路。想顺利通过面试的同学,不要错过这篇文章哟。 判断链表是否有环链表是线性结构,怎...

初识算法

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110...

算法-基础

算法的基本要素 对数据对象的运算和操作 算法的控制结构 朴素模式匹配算法斐波那契数列不能使用递归f(n) = f(n-1) + f(n-2)的原因:会造成大量重复计算,导致时间复杂度为O(2^n)。 使用动态规划消除重复计算,可使时间复杂度优化至O(n)。可用数组保存计算结果,则空间复杂度为O(n)。此处进一步简化,只使用两个变量保存结果,因此空间复杂度为O(1)。 123456789cl...

面试算法基础

树的遍历有几种,实现下层次遍历判断对称二叉树如何判断链表有环如何确定环长度如何确定入环位置

初始排序算法

排序算法可以分为两大类: 1、非线性时间比较类排序:通过比较来决定元素间的相对次序,由于其时间复杂度不能突破O(nlogn),因此称为非线性时间比较类排序。 2、线性时间非比较类排序:不通过比较来决定元素间的相对次序,它可以突破基于比较排序的时间下界,以线性时间运行,因此称为线性时间非比较类排序。 相关概念 稳定:如果a原本在b前面,而a=b,排序之后a仍然在b的前面。 不稳定:如...