leetcode
*苦咖啡*
这个作者很懒,什么都没留下…
展开
-
三数之和为0
/* 三数之和为0 执行用时 :55 ms, 在所有 Java 提交中击败了94.15%的用户 内存消耗 :46.9 MB, 在所有 Java 提交中击败了95.59%的用户 方法:双指针:*/ public static List<List<Integer>> threeSum(int[] nums) { ...原创 2019-07-02 19:08:01 · 380 阅读 · 0 评论 -
正则表达式
正则表达式,又称规则表达式。(英语:Regular Expression,在代码中常简写为regex、regexp或RE),计算机科学的一个概念。正则表达式通常被用来检索、替换那些符合某个模式(规则)的文本原创 2019-08-26 23:00:16 · 145 阅读 · 0 评论 -
买卖股票问题通解
买卖股票问题I.买卖股票一一般解法思路:有一次买入和买入机会,直接差值比较只可以了,俗称暴力法 public static int maxProfit(int[] prices) { int minbuy=Integer.MAX_VALUE; int max=0; for(int p:prices){ minbuy...原创 2019-08-16 22:41:28 · 211 阅读 · 0 评论 -
子序列判断
子序列判断**题目:**给定字符串 s 和 t ,判断 s 是否为 t 的子序列。你可以认为 s 和 t 中仅包含英文小写字母。字符串 t 可能会很长(长度 ~= 500,000),而 s 是个短字符串(长度 <=100)。字符串的一个子序列是原始字符串删除一些(也可以不删除)字符而不改变剩余字符相对位置形成的新字符串。(例如,"ace"是"abcde"的一个子序列,而"aec"不...原创 2019-07-28 18:57:14 · 363 阅读 · 0 评论 -
通过题目理解动态规划
爬楼梯解法:动态规划先解决一个楼梯两个楼梯的问题,在逐步增加,以求第N阶楼梯的最小花费题目给出两种爬楼梯方式,一次爬一阶,和一次爬两阶,因此爬到一二层的最小花费为0;第3阶为:a先爬到1的花费加上爬到3的花费;b爬到1爬到2在爬到3的花费;c爬到2再爬到3的花费;求最小值Math.min(a,b,c);()前面的b,c可归为一项第4阶为;a爬到2的和爬到4的花费;b爬到3的和...原创 2019-07-20 16:41:00 · 89 阅读 · 0 评论 -
从二叉搜索树到更大和树
从二叉搜索树到更大和树二叉搜索树:1节点的左子树仅包含键小于节点键的节点。2节点的右子树仅包含键大于节点键的节点。3左右子树也必须是二叉搜索树。**要求:**修改二叉树,使每个节点 node 的新值等于原树中大于或等于 node.val 的值之和。思路:逆置中序遍历执行用时 :0 ms, 在所有 Java 提交中击败了100.00%的用户内存消耗 :34.3 MB, 在所有 Java...原创 2019-07-06 17:19:55 · 449 阅读 · 0 评论 -
朋友圈
/* *并查集 * 执行用时 :4 ms, 在所有 Java 提交中击败了48.04%的用户 * 内存消耗 :49.9 MB, 在所有 Java 提交中击败了55.33%的用户* */ public int findCircleNum(int[][] M) { int len = M.length; UnionFi...原创 2019-07-10 14:19:37 · 187 阅读 · 0 评论 -
重建队列
/*重建队列 执行用时 :11 ms, 在所有 Java 提交中击败了95.28%的用户 内存消耗 :43.5 MB, 在所有 Java 提交中击败了92.45%的用户 */public static int[][] reconstructQueue(int[][] people) { if(0==people .length ||0==people[0].length)r...原创 2019-07-04 18:42:55 · 241 阅读 · 0 评论 -
删除链表倒数第N个节点
删除链表倒数第N个节点题目解题思路- 1>一趟扫描,则需要双指针标记倒数第N个节点- 2>题目最终要实现的是删除操作,则需要一个parent指针标记倒数第N个节点的上一个节点- 3>若删除的是第一个节点,且链表只有一个节点,则此时链表为空,直接返回null即可- 4>注意事项:题目只指明了n一定有效,但没有说当链表为空时N不能为零,所以判空操作是必须的p...原创 2019-07-13 18:48:24 · 119 阅读 · 0 评论 -
重建二叉树
重建二叉树/**重建二叉树执行用时 :21 ms, 在所有 Java 提交中击败了71.88%的用户内存消耗 :37.8 MB, 在所有 Java 提交中击败了65.37%的用户*/public TreeNode buildTree(int[] preorder, int[] inorder) { int i=preorder.length;int j=inorder.le...原创 2019-07-08 16:19:48 · 103 阅读 · 0 评论 -
脑筋急转弯AQA
1:你和你的朋友,两个人一起玩 Nim 游戏:桌子上有一堆石头,每次你们轮流拿掉 1 - 3 块石头。 拿掉最后一块石头的人就是获胜者。你作为先手。你们是聪明人,每一步都是最优解。 编写一个函数,来判断你是否可以在给定石头数量的情况下赢得游戏。来源:leetcode思路:假设石头数量为n,每次可以拿的石头数为1-m,前提是n一定要大于m,否则第一个人直接就获胜了那么只要你在倒数第二次拿石头...原创 2019-09-20 18:13:13 · 338 阅读 · 0 评论