两年前,在实习生笔试的时候,笔试百度,对试卷上很多问题感到不知所云,毫无悬念的挂了读研两年,今年代笔百度,发现算法题都见过,或者有思路,但一时之间居然都想不到很好的解法,而且很少手写思路,手写代码,有点仓皇失措;概念题却是很难答好,大多我都知道,但却难以描述清楚;最后一题大题,是设计分布式缓存系统,需要考虑负载均衡以及增删设备,我知识面比较窄,居然不知有一致性哈希,于是又跪
题目描述: 给定一个包含红色、白色和蓝色,一共 n 个元素的数组,原地对它们进行排序,使得相同颜色的元素相邻,并按照红色、白色、蓝色顺序排列。此题中,我们使用整数 0、 1 和 2 分别表示红色、白色和蓝色。注意: 不能使用代码库中的排序函数来解决这道题。示例: 输入: [2,0,2,1,1,0] 输出: [0,0,1,1,2,2] 进阶:一个直观的解决方案
最近在刷LeetCode的算法题,今天学习了排序的高效方法:最小堆和桶排序法。题目描述:给定一个非空的整数数组,返回其中出现频率前 k高的元素。示例 1:输入: nums = [1,1,1,2,2,3], k = 2输出: [1,2]1.最小堆法思路:①借助哈希表来建立数字及其出现频次的映射②维护一个元素数目为k的最小堆③每次都将新元素与堆顶元素(堆中频率最小的元素)比较④若新的元素比堆
记录总结LeetCode常用的算法,包括模板及例题。
原创 2022-07-07 19:28:34
151阅读
DFS backtrackingBinary searchDP
原创 2023-06-29 09:49:27
29阅读
精选例题 文章目录一、删除链表节点二、设计链表单链表实现双向链表实现三、反转链表四、两两交换链表中的节点五、删除链表的倒数第N个节点六、链表相交七、环形链表II题目解析 一、删除链表节点给你一个链表的头节点 head 和一个整数 val ,请你删除链表中所有满足 Node.val == val 的节点,并返回 新的头节点 题目链接public ListNode removeElements(Lis
991坏了的计算器 在显示着数字的坏计算器上,我们可以执行以下两种操作: 双倍(Double):将显示屏上的数字乘 2; 递减(Decrement):将显示屏上的数字减 1 。 最初,计算器显示数字 X。 返回显示数字 Y 所需的最小操作数。逆向思维,Y->X 1. Y为偶数则直接除2,且操作数++ 2. Y为奇数则(Y+1)/2,且操作数+=2 3. 循环至Y<X ,操作数+
 java  API=Java Application Interface 就是指那套基本类库。 没有那套库,没有这套编程接口,你编写应用程序将不是一般地困难。 作为Sun开发的Java程序,用于Java编程人员使用的程序接口,并不是说使用Java和接口有关,而是表示Java所提供的现成的类库,供编程人员使用。这与 Win32 中的 dll 文件有点像,封装了好多函数,只暴露也
转载 2023-06-27 21:48:27
171阅读
# LeetCode中的Java常用类库API 在LeetCode的编程题目中,Java是一种广泛使用的编程语言。熟悉Java常用类库API能帮助我们更有效地解决问题。本文将介绍一些常用Java类库及其应用示例,帮助大家在面临各种题目时游刃有余。 ## 1. 常用Java集合类 Java的集合类提供了方便的数据结构,如`ArrayList`、`HashMap`和`HashSet`。这些
原创 7月前
47阅读
计算字符串中的重复字符数: 1 int[] count = new int[256]; 2 for(int i = 0; i < s.length(); i++){ 3 count[s.charAt(i)]++; 4 } 单调栈 1 //单调栈指的是栈内元素按照递增或者递减的规律排列; 2 //单调 ...
转载 2021-08-02 16:14:00
145阅读
2评论
文章目录:1.Wrapper包装类:1.基本数据类型;2.包装类:对基本数据类型的封装。3.Math类:数学运算处理类4.日期处理类:5. Calendar日历类:6. System类: 1.Wrapper包装类:1.基本数据类型;数字型:byte,short,int,long 浮点型:float,double 字符型:char 布尔型:boolean基本数据类型:只能直接使用,没有提供对应的方
转载 2023-11-03 13:37:59
178阅读
Leetcode刷题、常用算法汇总
原创 2022-03-08 10:51:38
186阅读
Leetcode刷题、常用算法汇总
原创 2021-09-01 10:37:33
658阅读
链表遍历 单链表中的每个结点不仅包含值,还包含链接到下一个结点的地址。通过这种方式,单链表将所有结点按顺序组织起来。所以我们对链表的遍历可以通过两种方式:迭代或者递归 我们约定链表结构如下: public class ListNode { int val; ListNode next; ListNo ...
转载 2021-11-02 22:35:00
29阅读
2评论
自己从大二开始做leetcode常用的几种python函数,做题时经常用到: 1.enumerate() 函数 enumerate(sequence, [start=0]) sequence -- 一个序列、迭代器或其他支持迭代对象。 start -- 下标起始位置。 返回 enumerate(枚举 ...
转载 2021-09-05 16:51:00
1107阅读
2评论
常用函数
原创 2024-04-07 19:45:15
78阅读
语言选择:刷LeetCode 选择哪个都行,哪个方便用哪个,因为不同语言的限时不一样 打比赛一般限时都一样,所以首选C++,其次是Java技巧采用内置函数len() sum() count()# 最大值 x=float("inf") # infinity # 最小值 y=float("-inf") print(x) # inf print(y) # -infziparr1 = [1, 2, 3]
序: 马上要秋招了,作为一个数学系的学生想找一份研发类的工作确实需要做一些准备,现在开始重新梳理一下CS的知识。首先,从高中学NOIP常用的数据结构开始吧,从易到难慢慢来~目录存储结构数组链表常用方法线性数据结构栈栈的概念栈的应用栈的扩容Deque实现栈的常用操作队列概念单队列循环队列双端队列Stack 类的问题Deque的优势优先队列(并非队列)非线性数据结构二叉树(Binary tree)二叉
转载 29天前
342阅读
这里写目录标题二分查找题目描述解题思路解题方法---迭代解题方法---递归二分查找相关题目 - 35. 搜索插入位置题目描述解题思路解题方法二分查找相关题目 - 34. 在排序数组中查找元素的第一个和最后一个位置题目描述解题思路解题方法移除元素题目描述解题思路1解题方法1解题思路2解题方法2有序数组的平方题目描述解题思路解题方法长度最小的子数组题目描述解题思路解题方法长度最小的子数组相关题目 -
转载 2023-08-27 23:52:12
73阅读
⭐️写在前面这里是温文艾尔の学习之路?如果对你有帮助,给博主一个免费的点赞以示鼓励把QAQ?文章发布日期:2022.02.21?java学习之路!欢迎各位?点赞?评论收藏⭐️?算法学习? 文章目录1.组合2.组合总和III3.电话号码的字母组合4.组和总和 1.组合 链接:点击跳转给定两个整数 n 和 k,返回范围 [1, n] 中所有可能的 k 个数的组合。你可以按 任何顺序 返回答案。 题解在
  • 1
  • 2
  • 3
  • 4
  • 5