上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 73 下一页
摘要: "题目" 用hash,比较两个字符串数组的每个字符的hash值 阅读全文
posted @ 2020-02-09 19:27 Shendu.CC 阅读(139) 评论(0) 推荐(0) 编辑
摘要: "题目" 不想多说 阅读全文
posted @ 2020-02-09 19:26 Shendu.CC 阅读(315) 评论(0) 推荐(0) 编辑
摘要: "题目" 1349. Maximum Students Taking Exam Add to List Share Given a m n matrix seats that represent seats distributions in a classroom. If a seat is bro 阅读全文
posted @ 2020-02-09 19:22 Shendu.CC 阅读(355) 评论(0) 推荐(0) 编辑
摘要: "题目" 双周赛最后一题 题意:从起始点开始走,每次只能往前走一步,或者往后走一步,或者直接跳到数值一样的格子。求跳到最后一个格子的最小步数 题解: 一开始以为是动态规划,后来发现用BFS更加简单。动态规划也是可以解的。 阅读全文
posted @ 2020-02-09 19:12 Shendu.CC 阅读(535) 评论(0) 推荐(0) 编辑
摘要: "题目" 题意:给你一个字母组成的矩阵,和一些单词,问你在矩阵中能否找到这些单词。 题解:这道题目的数据范围大概是,单词很多!矩阵倒不大。这么多单词,一个一个拿来暴搜肯定超时,把他们变成hash 效率也很低。最好的办法,把这些单词组成一个字典树(前缀树),然后在矩阵里DFS时同时从树上匹配单词。 阅读全文
posted @ 2020-02-05 18:39 Shendu.CC 阅读(77) 评论(0) 推荐(0) 编辑
摘要: "题目" 题意:给你一个数组代表每天的股价。你有k次买入和卖出的机会,问你最多能赚多少钱。买入之前必须卖出已有股份。同一天是可以先买,再卖,或者先卖再买的。 题解:题目没有说数据范围,但是经过我实际测试 k 最大为10^8 ,n最大为10^4。当然k最多只需要取n/2就好了,因为当天买当天卖是没有意 阅读全文
posted @ 2020-02-04 12:31 Shendu.CC 阅读(105) 评论(0) 推荐(0) 编辑
摘要: "题目" 题意:判断一个DNA序列中,长度为10的子序列,重复次数超过1次的序列! 题解:用一个map 就能搞定了,但是出于时间效率的优化,我们可以用位运算和数组代替map,首先只有四个字母,就可以用00,01,10,11 四个二进制表示,长度为10的序列,可以用长度为20的二进制序列表示。这样每中 阅读全文
posted @ 2020-01-27 20:13 Shendu.CC 阅读(135) 评论(0) 推荐(0) 编辑
摘要: "题目" 题意:给你一个数组,让你把数组里的元素组合起来,组合成的新数字最大 题解:把数字给排个序,但是排序的标准是啥呢?两个数字孰大孰小呢?判断标准就是两个数字分别前后组合,得出的数字哪个大,则前面的那个数字就大。 一开始我的思路错了,根据数字每个位上的数字判断,这样反而是变得更加复杂了! 阅读全文
posted @ 2020-01-27 20:10 Shendu.CC 阅读(118) 评论(0) 推荐(0) 编辑
摘要: "题目" 题意:每个格子里都有数字,负数代表你会少血,正数代表你会加血,当你的血量为0的时候就死了,从左上角出发,到右下角,问你一开始最少的血量是多少。整个过程中不能有血量为0的情况。 题解:只能走下或者走右。这种有向无环图,八成都是动态规划。但是如果从左上角开始规划,有很多情况要考虑。从右下角开始 阅读全文
posted @ 2020-01-27 15:31 Shendu.CC 阅读(107) 评论(0) 推荐(0) 编辑
摘要: "题目" 题意:实现一个BST的Next()函数,输出BST里的从小到大的数字。 题解:题目说Next()的时间效率O(1),空间效率O(h),h为树的高度。我们维护一个栈,把前序遍历的左子树的结果存进去。 每次Next取出栈顶元素的时候,再遍历栈顶元素的右子树的前序遍历的左子树部分。 阅读全文
posted @ 2020-01-27 15:25 Shendu.CC 阅读(81) 评论(0) 推荐(0) 编辑
上一页 1 ··· 10 11 12 13 14 15 16 17 18 ··· 73 下一页