
面试高频题
发如雪Jay
你猜
展开
专栏收录文章
- 默认排序
- 最新发布
- 最早发布
- 最多阅读
- 最少阅读
-
148.排序链表【leetcode】
题目 字节面试题 复杂度分析 时间复杂度O(nlogn) 空间复杂度为O(1) 解题思路参照官方做法2:自底向上归并排序 这里给出注释版,便于本次和以后做这题的理解 class Solution { // 自底向上归并排序 public ListNode sortList(ListNode head) { if(head == null){ return head; } // 1. 首先从头向后遍历,统计链表长度原创 2022-05-07 11:39:31 · 383 阅读 · 2 评论 -
25.K个一组翻转链表5/100【leetcode】
题目: 给你链表的头节点 head ,每 k 个节点一组进行翻转,请你返回修改后的链表。 k 是一个正整数,它的值小于或等于链表的长度。如果节点总数不是k 的整数倍,那么请将最后剩余的节点保持原有顺序。 你不能只是单纯的改变节点内部的值,而是需要实际进行节点交换。 示例1: 示例2: cpp代码: /** * Definition for singly-linked list. * struct ListNode { * int val; * ListNode *next;原创 2022-04-28 14:15:10 · 801 阅读 · 0 评论 -
215.数组中的第K个最大元素 4/100【leetcode】
题目: 给定整数数组nums和整数k,请返回数组中第k个最大的元素。 请注意,你需要找的是数组排序后的第k个最大的元素,而不是第k个不同的元素。 示例1: 输入: [3,2,1,5,6,4] 和 k = 2 输出: 5 示例2: 输入: [3,2,3,1,2,4,5,5,6] 和 k = 4 输出: 4 热度:4/100 分析 1.怎么和快排联系到了一起:因为快排的思想是每次通过一个数arr[q],将数组arr分为两部分,索引q左边区间[left,q-1]对应的数组元素都小于等于arr[q],索引q右边的区原创 2022-04-27 15:13:42 · 141 阅读 · 0 评论 -
146.LRU缓存【leetcode】3/100
题目:146.LRU缓存 请你设计并实现一个满足 LRU (最近最少使用) 缓存 约束的数据结构。 实现 LRUCache 类: LRUCache(int capacity) 以 正整数 作为容量 capacity 初始化 LRU 缓存 int get(int key) 如果关键字 key 存在于缓存中,则返回关键字的值,否则返回 -1 。 void put(int key, int value) 如果关键字 key 已经存在,则变更其数据值 value ;如果不存在,则向缓存中插入该组 key-val原创 2022-04-26 14:21:32 · 143 阅读 · 0 评论 -
3.无重复字符的最长子串【leetcode】2/100
题目: 给定一个字符串 s ,请你找出其中不含有重复字符的最长子串的长度。 示例1: 输入: s = “abcabcbb” 输出: 3 解释: 因为无重复字符的最长子串是 “abc”,所以其长度为 3。 示例2: 输入: s = “bbbbb” 输出: 1 解释: 因为无重复字符的最长子串是 “b”,所以其长度为 1。 示例3: 输入: s = “pwwkew” 输出: 3 解释: 因为无重复字符的最长子串是 “wke”,所以其长度为 3。 请注意,你的答案必须是 子串 的长度,“pwke” 是一个子序列,原创 2022-04-22 11:38:55 · 257 阅读 · 0 评论 -
leetcode 59.螺旋矩阵2 C++
给你一个正整数 n ,生成一个包含 1 到 n2 所有元素,且元素按顺时针顺序螺旋排列的 n x n 正方形矩阵 matrix 。 示例: 输入:n = 3 输出:[[1,2,3],[8,9,4],[7,6,5]] 输入:n = 1 输出:[[1]] 代码: class Solution { public: //模拟, vector<vector<int>> generateMatrix(int n) { //四个边界 in原创 2022-04-08 09:23:09 · 519 阅读 · 0 评论 -
【leetcode】128最长连续序列 C++
给定一个未排序的整数数组 nums ,找出数字连续的最长序列(不要求序列元素在原数组中连续)的长度。 请你设计并实现时间复杂度为 O(n) 的算法解决此问题。 示例 1: 输入:nums = [100,4,200,1,3,2] 输出:4 解释:最长数字连续序列是 [1, 2, 3, 4]。它的长度为 4。 示例 2: 输入:nums = [0,3,7,2,5,8,4,6,0,1] 输出:9 提示: 0 <= nums.length <= 105 -109 <= nums.原创 2022-03-07 16:29:04 · 645 阅读 · 0 评论