随笔分类 -  LeetCode

摘要:136. Single Number 意思就是给你一堆数,每个数都出现了两次,只有一个数只出现了一次,找出这个数 位运算(和c艹一样) &:按位与 |:按位或 ^:异或(一样为0,不一样为1) 再说一下异或的性质,满足交换律和结合律 因此: 对于任意一个数n n ^ 0 = n n ^ n = 0 阅读全文
posted @ 2018-02-01 13:16 swallowblank 阅读(182) 评论(0) 推荐(0) 编辑
摘要:题目大意 给你接下来每一天的气温,求出对于每一天的气温,下一次出现比它高气温的日期距现在要等多少天 解题思路 利用单调栈,维护一个单调递减的栈 将每一天的下标i入栈,维护一个温度递减的下标 若下一个温度p,比栈顶元素对应的温度p'要高,就出栈,且p就是p'的最近的“高温” 代码实现 1 from c 阅读全文
posted @ 2018-01-30 23:36 swallowblank 阅读(326) 评论(0) 推荐(0) 编辑
摘要:注:转载自:https://www.cnblogs.com/love-yh/p/7072161.html 阅读全文
posted @ 2018-01-26 15:07 swallowblank 阅读(288) 评论(0) 推荐(0) 编辑
摘要:题目大意: 给你一个由小到大排好序的数组,里面只有一个数出现了一次,其他数都出现了两次,要求找出那个只出现一次的数,而且时间复杂度为O(logn) 题目思路: 说实话一开始没想到,因为几乎每个数都出现了两次那么对于一个偶数i,一定有nums[i] == nums[i+1]否则说明在这之前出现过只出现 阅读全文
posted @ 2018-01-26 10:47 swallowblank 阅读(99) 评论(0) 推荐(0) 编辑
摘要:My Topic In LeetCode 初来乍到,不知道为什么好多人要在标题上标明自己的行数?所以就照样子来了 怎么说呢决定每一个人位置的仅仅是站在他前面的且比他高的人,呃,或许更准确的说法是,若有比他低的人站在他的前面,结果将依然正确,所以优先处理更高的人,因为没有人比他还高了那么他的位置就是一 阅读全文
posted @ 2018-01-23 23:07 swallowblank 阅读(154) 评论(0) 推荐(0) 编辑
摘要:766. Toeplitz Matrix 第一题不说,贼麻瓜,好久没以比赛的状态写题,这个题浪费了快40分钟,我真是。。。。。。 767. Reorganize String 就是给你一个字符串,能不能转换成:任意一个字符S[i],使得S[i-1]和S[i+1]都不等于S[i]。如果能输出,不能就输 阅读全文
posted @ 2018-01-22 15:15 swallowblank 阅读(708) 评论(1) 推荐(0) 编辑
摘要:题目大意: 连续最大子段积 题目思路: 最大值只能产生在一个正数x一个正数,一个负数乘一个负数,所以维护两个值,一个区间最大值,一个最小值 其他的话: 在讨论这个问题之前,我先来说一说大一刚开学就学了的最简单的dp问题之一的【最大连续子序列】 先来看一个数组a{ -2, 11, -4, 13, -5 阅读全文
posted @ 2018-01-20 20:38 swallowblank 阅读(151) 评论(0) 推荐(0) 编辑
摘要:题目大意: 给出a, b两个用字符串表示的虚数,求a*b 题目思路: 偷了个懒,Python3的正则表达式匹配了一下,当然acm里肯定是不行的 阅读全文
posted @ 2018-01-19 11:54 swallowblank 阅读(164) 评论(0) 推荐(0) 编辑
摘要:654. Maximum Binary Tree 题目大意: 意思就是给你一组数,先选一个最大的作为根,这个数左边的数组作为左子树,右边的数组作为右子树,重复上一步。 读完就知道是递归了。 这个题真尼玛恶心,对JavaScript的友好度简直为0,用Js的可以直接放弃了。 时间复杂度应该是小于n2的 阅读全文
posted @ 2018-01-19 11:15 swallowblank 阅读(120) 评论(0) 推荐(0) 编辑
摘要:题目大意: 就是一个由1和0组成的正方形矩阵,求里面最大的加号的大小,这个大小就是长度。 什么鬼啊,本来想自己想的,结果看了半天没看懂具体什么意思,然后查了下题解,希望有人说一下意思,结果一上来就是思路,还直接动态规划四个大字,我也是呵呵了 思路一:暴力Brute Force 就是用i, j 循环每 阅读全文
posted @ 2018-01-17 21:58 swallowblank 阅读(379) 评论(0) 推荐(0) 编辑
摘要:我一开始看数据范围很小,没怎么想就直接暴力了。 暴力的思路是: 对于每一段S的前缀,这个前缀中的每一个字母都不应该在前缀的补集中出现,所以直接循环i:0 to S.length然后对于每一次循环,再循环前缀中的每一个字母,判断是否在后面出现,如果出现就 说明该前缀不合适继续向后循环,如果没有出现就加 阅读全文
posted @ 2018-01-16 23:23 swallowblank 阅读(381) 评论(0) 推荐(0) 编辑

点击右上角即可分享
微信分享提示