03 2023 档案
算法 -- 分割两个字符串得到回文串
摘要:分割两个字符串得到回文串 提示 中等 114 相关企业 给你两个字符串 a 和 b ,它们长度相同。请你选择一个下标,将两个字符串都在 相同的下标 分割开。由 a 可以得到两个字符串: aprefix 和 asuffix ,满足 a = aprefix + asuffix ,同理,由 b 可以得到两
阅读全文
算法 -- 和有限的最长子序列
摘要:和有限的最长子序列 提示 简单 84 相关企业 给你一个长度为 n 的整数数组 nums ,和一个长度为 m 的整数数组 queries 。 返回一个长度为 m 的数组 answer ,其中 answer[i] 是 nums 中 元素之和小于等于 queries[i] 的 子序列 的 最大 长度 。
阅读全文
算法 -- 合并K个升序链表
摘要:原题: 23. 合并K个升序链表 困难 2.4K 相关企业 给你一个链表数组,每个链表都已经按升序排列。 请你将所有链表合并到一个升序链表中,返回合并后的链表。 示例 1: 输入:lists = [[1,4,5],[1,3,4],[2,6]] 输出:[1,1,2,3,4,4,5,6] 解释:链表数组
阅读全文
算法 -- 数据流中的第K大数
摘要:原题: 703. 数据流中的第 K 大元素 简单 417 相关企业 设计一个找到数据流中第 k 大元素的类(class)。注意是排序后的第 k 大元素,不是第 k 个不同的元素。 请实现 KthLargest 类: KthLargest(int k, int[] nums) 使用整数 k 和整数流
阅读全文
算法 -- 反转链表
摘要:反转链表 简单 3K 相关企业 给你单链表的头节点 head ,请你反转链表,并返回反转后的链表。 示例 1: 输入:head = [1,2,3,4,5] 输出:[5,4,3,2,1] 示例 2: 输入:head = [1,2] 输出:[2,1] 示例 3: 输入:head = [] 输出:[] 提
阅读全文
MYSQL -- 分数排名
摘要:原题: 分数排名 中等 1.1K 相关企业 SQL Schema 表: Scores + + + | Column Name | Type | + + + | id | int | | score | decimal | + + + Id是该表的主键。 该表的每一行都包含了一场比赛的分数。Score
阅读全文
MYSQL -- 第二高的薪水
摘要:第二高的薪水 中等 1.3K 相关企业 SQL Schema Employee 表: + + + | Column Name | Type | + + + | id | int | | salary | int | + + + id 是这个表的主键。 表的每一行包含员工的工资信息。 编写一个 SQL
阅读全文
算法 -- 正则表达式匹配 (动态规划)
摘要:原题: 10. 正则表达式匹配 困难 3.5K 相关企业 给你一个字符串 s 和一个字符规律 p,请你来实现一个支持 '.' 和 '*' 的正则表达式匹配。 '.' 匹配任意单个字符 '*' 匹配零个或多个前面的那一个元素 所谓匹配,是要涵盖 整个 字符串 s的,而不是部分字符串。 示例 1: 输入
阅读全文
算法 -- 寻找两个正序数组的中位数(二分查找)
摘要:原题: 给定两个大小分别为 m 和 n 的正序(从小到大)数组 nums1 和 nums2。请你找出并返回这两个正序数组的 中位数 。 算法的时间复杂度应该为 O(log (m+n)) 。 示例 1: 输入:nums1 = [1,3], nums2 = [2] 输出:2.00000 解释:合并数组
阅读全文
Java基础 -- HashMap
摘要:HashMap组成原理 HashMap是Java中常用的数据结构,是基于哈希表实现的 JDK1.2-JDK1.7 数组+链表,HashMap内部使用Entry[]来存储键值对,发生哈希冲突时,采用链式解决方法,每个桶(bucket)维护一个单项链表存储hash值相同的元素,插入链表采用头插法。 JD
阅读全文