- 博客(12)
- 收藏
- 关注
原创 关于笔试算法题输入输出的一些练习
最近看到面经,有人提到笔试题输入输出需要好好留意一下import java.util.*; class Solution{ public static void main(String[] args){ Scanner in = new Scanner(System.in); int n = in.nextInt(); ArrayL...
2020-03-05 20:50:40
1130
原创 300. 最长上升子序列(看字节面经出现了,再巩固巩固)
300. 最长上升子序列字节面经看到过,还是需要好好注意一下的class Solution { public int lengthOfLIS(int[] nums) {//这题非常重要!!! if (nums==null ||nums.length==0) return 0; int[] dp=new int[nums.length];//dp[i]表示...
2020-03-05 20:47:41
140
原创 287. 寻找重复数
287. 寻找重复数这个题还蛮有意思的class Solution { public int findDuplicate(int[] nums) { int slow=0;//慢指针 int fast=0;//快指针 while (true){//类似环找出口。。 fast=nums[nums[fast]]; ...
2020-03-05 20:45:53
126
原创 665. 非递减数列
665. 非递减数列优先考虑令 nums[i - 1] = nums[i],因为如果修改 nums[i] = nums[i - 1] 的话,那么 nums[i] 这个数会变大,就有可能比 nums[i + 1] 大,从而影响了后续操作。还有一个比较特别的情况就是 nums[i] < nums[i - 2],修改nums[i - 1] = nums[i] 不能使数组成为非递减数组,只能修...
2020-03-05 19:25:51
116
原创 669. 修剪二叉搜索树
669. 修剪二叉搜索树class Solution { public TreeNode trimBST(TreeNode root, int L, int R) { if(root ==null) return root; //开始修剪了 if (root.val>R) return trimBST(root.left,L,R);...
2020-03-05 19:24:31
97
原创 697. 数组的度
697. 数组的度class Solution { public int findShortestSubArray(int[] nums) { HashMap<Integer,int[]> map=new HashMap<>(); //定义一个hashmap,key为数字,value为数组{该数的频数,该数第一次出现的地方,该数最后...
2020-03-05 19:23:32
88
原创 680. 验证回文字符串 Ⅱ
680. 验证回文字符串 Ⅱclass Solution { public boolean validPalindrome(String s) { int i=0; int j=s.length()-1; while(i<j){ if (s.charAt(i)!=s.charAt(j)) return pali...
2020-03-05 19:20:30
109
原创 数据流的中位数
295. 数据流的中位数思路:应用:大数据流下,找到2G数字中的中位数,如果内存够大,可直接读入内存,如果内存不够大,需要进行分治。分治思路简单如下,通过最高位0还是1分两个小文件,在较大的文件中用相同方法不断二分,直至可以读入内存。class MedianFinder { /*中位数是有序列表中间的数。如果列表长度是偶数,中位数则是中间两个数的平均值。*/ private ...
2020-02-21 11:44:18
178
原创 二叉树的所有路径
257. 二叉树的所有路径class Solution { public List<String> binaryTreePaths(TreeNode root) { List<String> res=new ArrayList<>(); if (root==null) return res; helper...
2020-02-21 11:39:55
132
原创 023.Merge k Sorted Lists
public class Solution { public class ListNode { int val; ListNode next; HashMap<Integer,Integer> map=new HashMap<>(); ListNode(int x) { va...
2020-02-21 11:36:48
87
原创 three sum
以往整理的题目进行一些小总结/*找出三个数字相加为0的所有组合*/public class Solution { public List<List<Integer>> threeSum(int[] num) { Arrays.sort(num); //排序,这是很重要的一步 List<List<Integer>...
2020-02-21 11:32:37
187
原创 两个有序数组的中位数
/*给定两个大小为 m 和 n 的有序数组 nums1 和 nums2。请你找出这两个有序数组的中位数,并且要求算法的时间复杂度为 O(log(m + n))。*/给出思路,但还是有一些不理解的地方。public class Solution { public double findMedianSortedArrays(int[] nums1, int[] nums2) { ...
2020-02-21 11:27:33
69
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人