- 博客(10)
- 资源 (1)
- 收藏
- 关注
原创 牛客题霸NC119题解
最小的K个数牛客题霸NC119难度:Medium题目描述输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4。输入[4,5,1,6,2,7,3,8],4返回值[1,2,3,4]解决思路使用一个容量为K的最大堆,程序如下:import java.util.*;public class Solution { public ArrayList<Integer> GetLeastNumbers_S
2020-11-09 15:15:27
235
原创 牛客题霸NC105题解
二分查找牛客题霸NC105难度:Easy题目描述请实现有重复数字的有序数组的二分查找。输出在数组中第一个大于等于查找值的位置,如果数组中不存在这样的数,则输出数组长度加一。示例输入5,4,[1,2,4,4,5]返回值3说明输出位置从1开始计算 题目答案很简单的二分查找,关键看三个地方就行了:low < high 还是low <= highmid是左倾还是右倾向左收缩条件及向右收缩条件import java.util.*;public cla
2020-11-09 15:14:56
509
原创 牛客题霸NC93题解
设计LRU缓存结构牛客题霸NC93难度:Medium题目描述设计LRU缓存结构,该结构在构造时确定大小,假设大小为K,并有如下两个功能set(key, value):将记录(key, value)插入该结构get(key):返回key对应的value值[要求]set和get方法的时间复杂度为O(1)某个key的set或get操作一旦发生,认为这个key的记录成了最常使用的。当缓存的大小超过K时,移除最不经常使用的记录,即set或get最久远的。若opt=1,接下来两个整数x
2020-11-09 15:14:20
357
原创 牛客题霸NC88题解
寻找第K大牛客题霸NC88难度:Medium题目描述有一个整数数组,请你根据快速排序的思路,找出数组中第K大的数。给定一个整数数组a,同时给定它的大小n和要找的K(K在1到n之间),请返回第K大的数,保证答案存在。示例1输入[1,3,5,2,2],5,3返回值2题目解答利用快排思想通过快速排序的partion与二分思想找到第K大的数,代码如下:import java.util.*;public class Finder { public int findKth
2020-11-09 15:13:51
195
原创 牛客题霸NC68题解
跳台阶题目描述一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。示例1输入1返回值1示例2输入4返回值5解决思路就是个斐波那契数列,代码如下:public class Solution { public int JumpFloor(int target) { if(target <= 1){ return 1; }
2020-11-09 15:13:19
160
原创 牛客题霸NC45题解
实现二叉树先序中序后序遍历牛客题霸NC45难度:Easy题目描述分别按照二叉树先序,中序和后序打印所有的节点。示例输入{1,2,3}返回值[[1,2,3],[2,1,3],[2,3,1]]备注:n≤10^6题目答案import java.util.*;/* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * } *
2020-11-09 15:12:39
207
原创 牛客题霸NC33题解
合并有序链表牛客题霸NC33难度:Easy题目描述将两个有序的链表合并为一个新链表,要求新的链表是通过拼接两个链表的节点来生成的。输入{1},{}返回值{1}输入{1},{1}返回值{1,1}代码解决算法入门基础题,尾插法扫描拼接即可:import java.util.*;/* * public class ListNode { * int val; * ListNode next = null; * } */public class So
2020-11-09 15:12:07
155
原创 牛客题霸NC15题解
求二叉树的层序遍历牛客题霸NC15难度:Medium二叉树的层序遍历使用队列来实现,代码如下:import java.util.*;/* * public class TreeNode { * int val = 0; * TreeNode left = null; * TreeNode right = null; * } */public class Solution { /** * * @param root TreeNode类
2020-11-09 15:11:32
227
原创 牛客题霸NC04题解
判断链表中是否有环牛客题霸NC93难度:Easy题目描述判断给定的链表中是否有环,你能给出空间复杂度[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-tufwc43W-1604905749303)(https://www.nowcoder.com/equation?tex=O(1)]%5C)的解法么?题目解答1. Set+遍历遍历链表,将遍历的每个节点放到一个Set里。如果遍历过程中发现Set中已经存在该节点,则代表链表存在环;如果遍历到末尾,则代表链表无环。
2020-11-09 15:10:25
176
2
原创 牛客题霸反转链表题解
反转链表牛客题霸NC78难度:Easy题目描述:输入一个链表,反转链表后,输出新链表的表头。示例:输入:{1, 2, 3}输出:{3, 2, 1}解决方法:1.通过栈+尾插法实现可以将所有节点入栈,然后逐个出栈,插入到链表尾部。import java.util.*;/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.va
2020-11-05 17:27:45
165
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人