刷题
爱笑的k11
关注微信公众号 '云海拾贝' , 获取大量优质推送!!!
展开
-
二叉树中的最大路径和(递归+分治)
给定一个非空二叉树,返回其最大路径和。本题中,路径被定义为一条从树中任意节点出发,达到任意节点的序列。该路径至少包含一个节点,且不一定经过根节点。示例 1:输入: [1,2,3] **1** **/ \\** **2** **3**输出: 6示例 2:输入: [-10,9,20,null,null,15,7]-10/ \9 20/ \15 7输出:...原创 2020-03-28 21:41:38 · 589 阅读 · 0 评论 -
至少有K个重复字符的最长子串(分治+动态规划)
找到给定字符串(由小写字符组成)中的最长子串 T , 要求 T 中的每一字符出现次数都不少于 k 。输出 ***T ***的长度。示例 1:输入:s = “aaabb”, k = 3输出:3最长子串为 “aaa” ,其中 ‘a’ 重复了 3 次。示例 2:输入:s = “ababbc”, k = 2输出:5最长子串为 “ababb” ,其中 ‘a’ 重复了 2 次, ‘b’...原创 2020-03-28 20:28:26 · 1166 阅读 · 0 评论 -
计算右侧小于当前元素的个数(归并排序)
给定一个整数数组 nums,按要求返回一个新数组 counts。数组 counts 有该性质: counts[i] 的值是 nums[i] 右侧小于 nums[i] 的元素的数量。示例:输入: [5,2,6,1]输出: [2,1,1,0] **解释:**5 的右侧有 2 个更小的元素 (2 和 1).2 的右侧仅有 1 个更小的元素 (1).6 的右侧有 1 个更小的元素 (1)....原创 2020-03-28 16:35:21 · 346 阅读 · 0 评论 -
寻找重复数(链表,floyed)
给定一个包含 n + 1 个整数的数组 nums,其数字都在 1 到 *n *之间(包括 1 和 n),可知至少存在一个重复的整数。假设只有一个重复的整数,找出这个重复的数。示例 1:输入: [1,3,4,2,2]输出: 2示例 2:输入: [3,1,3,4,2]输出: 3说明:不能更改原数组(假设数组是只读的)。只能使用额外的 O(1) 的空间。时间复杂度小于 O(n2) ...原创 2020-03-18 13:03:19 · 424 阅读 · 0 评论 -
寻找峰值(二分查找)
峰值元素是指其值大于左右相邻值的元素。给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。你可以假设 nums[-1] = nums[n] = -∞。示例 1:输入: nums = [1,2,3,1]输出: 2解释: 3 是峰值元素,你的函数应该返回其索引 2。示例 2...原创 2020-03-18 11:00:14 · 301 阅读 · 0 评论 -
摆动排序 II
摆动排序 II给定一个无序的数组 nums,将它重新排列成 nums[0] < nums[1] > nums[2] < nums[3]... 的顺序。示例 1:输入: nums = [1, 5, 1, 1, 6, 4]输出: 一个可能的答案是 [1, 4, 1, 5, 1, 6]示例 2:输入: nums = [1, 3, 2, 2, 3, 1]输出: 一个可能的答...原创 2020-03-16 23:16:27 · 150 阅读 · 0 评论 -
最大数
给定一组非负整数,重新排列它们的顺序使之组成一个最大的整数。示例 1:输入: [10,2]输出: 210示例 2:输入: [3,30,34,5,9]输出: 9534330说明: 输出结果可能非常大,所以你需要返回一个字符串而不是整数。排序的核心思路: 将要排序得两个数a,b互相拼接组成ab,ba,而后比较大小class Solution { //归并排序 publ...原创 2020-03-16 10:59:55 · 157 阅读 · 0 评论 -
天际线问题(大顶堆,树)
城市的天际线是从远处观看该城市中所有建筑物形成的轮廓的外部轮廓。现在,假设您获得了城市风光照片(图A)上显示的所有建筑物的位置和高度,请编写一个程序以输出由这些建筑物形成的天际线(图B)。 每个建筑物的几何信息用三元组 [Li,Ri,Hi] 表示,其中 Li 和 Ri 分别是第 i 座建筑物左右边缘的 x 坐标,Hi 是其高度。可以保证 0 ≤ Li, Ri ≤ INT_MAX, 0 <...原创 2020-03-15 19:12:53 · 346 阅读 · 0 评论 -
待解决_美团面试
例如,二叉树 [1,2,2,3,4,4,3] 是对称的。1/ 2 2/ \ / 3 4 4 3public boolean checkBinaryTree(TreeNode left,TreeNode right){ if(left==null && right!=null){ return false; ...原创 2020-03-10 22:55:09 · 119 阅读 · 0 评论 -
逆波兰表达式求值
根据逆波兰表示法,求表达式的值。有效的运算符包括 +, -, *, / 。每个运算对象可以是整数,也可以是另一个逆波兰表达式。说明:整数除法只保留整数部分。给定逆波兰表达式总是有效的。换句话说,表达式总会得出有效数值且不存在除数为 0 的情况。示例 1:输入: [“2”, “1”, “+”, “3”, “*”]输出: 9解释: ((2 + 1) * 3) = 9示例 2:输...原创 2020-03-04 10:56:04 · 146 阅读 · 0 评论 -
扁平化嵌套列表迭代器
leetcod链接给你一个嵌套的整型列表。请你设计一个迭代器,使其能够遍历这个整型列表中的所有整数。列表中的每一项或者为一个整数,或者是另一个列表。示例 1:输入: [[1,1],2,[1,1]]输出: [1,1,2,1,1]解释: 通过重复调用 next 直到 hasNext 返回 false,*next *返回的元素的顺序应该是: [1,1,2,1,1]。示例 2:输入: [1...原创 2020-03-04 08:34:27 · 237 阅读 · 0 评论 -
大数相乘
···package main.algorithm;//大数相乘public class Multiplication {public static String result(String str1,String str2){// 4 5 6// 5 6 7//1:67 2:57+66 3:47+56 4: 56 5: 46+55 6: 4*5String str;char[]...原创 2020-02-25 15:16:44 · 86 阅读 · 0 评论 -
线段树求区间和
代码public class LineTreeDemo { //求区间和 private int L; private int R; private int rt; private Node buildLineTree(int[] arr,int rt,Node[] dest,int L,int R){ if(L == R){ ...原创 2020-01-17 15:09:39 · 132 阅读 · 0 评论 -
无重复的最长子串
题目地址: https://leetcode-cn.com/problems/longest-substring-without-repeating-characters/代码public static int lengthOfLongestSubstring(String s) { int front = 0;//最前位置 int result = 0;//最...原创 2020-01-02 22:25:34 · 97 阅读 · 0 评论