234. 回文链表

给你一个单链表的头节点 head ,请你判断该链表是否为回文链表。如果是,返回 true ;否则,返回 false 。

236. 二叉树的最近公共祖先

给定一个二叉树, 找到该树中两个指定节点的最近公共祖先。百度百科中最近公共祖先的定义为:“对于有根树 T 的两个节点 p、q,最近公共祖先表示为一个节点 x,满足 x 是 p、q 的祖先且 x 的深度尽可能大(一个节点也可以是它自己的祖先)。”

160. 相交链表

给你两个单链表的头节点 headA 和 headB ,请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点,返回 null 。

笔试题:三数之和

给你一个整数数组 nums ,判断是否存在三元组 [nums[i], nums[j], nums[k]] 满足 i != j、i != k 且 j != k ,同时还满足 nums[i] + nums[j] + nums[k] == 0 。请你返回所有和为 0 且不重复的三元组。答案中不可以包含重复的三元组。这是一个经典的「三数之和」问题(3Sum),通常使用排序 + 双指针的方法高效解决,并注意去重。

笔试题:LRU缓存

请你设计并实现一个满足 LRU (最近最少使用) 缓存约束的数据结构。为了满足 LRU(Least Recently Used)缓存 的要求,并确保 get 和 put 操作具有 O(1) 平均时间复杂度,我们需要结合以下两种数据结构:哈希表:用于实现 O(1) 的 key 查找;双向链表:用于维护元素的访问顺序,使得最近使用的在尾部,最久未使用的在头部,支持 O(1) 插入和删除。

本站简介

聚焦于全栈技术和量化技术的技术博客,分享软件架构、前后端技术、量化技术、人工智能、大模型等相关文章总结。