上一页 1 2 3 4 5 6 7 ··· 12 下一页
摘要: 不大会做,一看题解果然要用到别的数据结构。第一种方法用的是优先队列,也就是大顶堆。其中一个很好的想法是,在滑动窗口移动的时候,添加后方的元素,但是不着急删除前一个元素。而在判断最大值时,如果最大值所在的索引不在窗口内,则弹出该最大值,并重复这一段操作,直到当前最大值在窗口内。贴第一种方法 1 cla 阅读全文
posted @ 2021-10-03 19:16 zhaohhhh 阅读(44) 评论(0) 推荐(0)
摘要: 第一个方法,维护一个大顶堆,其中有K个元素,遍历,算了没意思,不说了,贴代码 1 class Solution { 2 public: 3 int kthSmallest(vector<vector<int>>& matrix, int k) 4 { 5 priority_queue<int,vec 阅读全文
posted @ 2021-09-30 19:42 zhaohhhh 阅读(40) 评论(0) 推荐(0)
摘要: 一看就知道要用什么花里胡哨的数据结构,就看了题解,果然用了大顶堆和小顶堆,两个堆中分别维护小于当前中位数的数和大于当前中位数的数。如果总数为奇数,则将中位数存储在小顶堆中,如果总数为偶数,则中位数为两个堆堆顶元素之和的一半。当然如果两个堆数量失衡,则需要进行调整,贴代码。 1 class Media 阅读全文
posted @ 2021-09-30 18:58 zhaohhhh 阅读(45) 评论(0) 推荐(0)
摘要: 很有意义的一个题目。其实本质是在一个类中维护了两个栈,其中一个是正常的,另外一个维护的是最小元素,与其说维护的是最小元素,不如说维护的是该元素对应的元素被压入栈中时,该最小栈中的最小元素。其巧妙之处在于,若弹出的元素非最小元素,则最小栈中弹出的元素也不是唯一的,下面肯定还有。而若弹出的元素为当前最小 阅读全文
posted @ 2021-09-29 20:33 zhaohhhh 阅读(32) 评论(0) 推荐(0)
摘要: 遇到的时候有点困难,看了答案发现还算直观。可以维护两个数组,一个代表第i个节点往左所有元素乘积,另一个代表往右所有元素乘积,然后再建立一个答案数组,乘一下即可。当然也可以只维护一个数组,比如先建立往左或者往右的,完成之后在新一轮循环中维护一个数,该数的值为当前节点往相反方向所有元素的乘积,在循环中乘 阅读全文
posted @ 2021-09-29 20:22 zhaohhhh 阅读(33) 评论(0) 推荐(0)
摘要: 一道很有纪念意义的动态规划题目。动态规划的核心在于找到最优子结构,自己写的动态规划中,使用了近乎暴力的计算方法,用一个二维数组去存储乘积。固然可以,但是和动态规划的内核是不符的。所以需要在遍历的过程中维护当前节点之前的最大乘积和最小乘积,同时维护两个是因为当前节点值可能为负数,所以乘上最小乘积有可能 阅读全文
posted @ 2021-09-25 19:41 zhaohhhh 阅读(40) 评论(0) 推荐(0)
摘要: 单词搜索的高级形式,在同一个矩阵中搜索多个单词。因为刚刚完成了tire也就是前缀树的撰写,整体写起来并不困难,使用深度优先搜索的递归就可以。然而问题出在效率上,尤其是所需要进行搜索的单词数量比较多的时候。进行了一些方面的修改。第一点是在完成一个单词的搜索之后就将该单词对应node的isend标志修改 阅读全文
posted @ 2021-09-17 19:27 zhaohhhh 阅读(44) 评论(0) 推荐(0)
摘要: 其实就是一个用于存储字符的多叉树,每一个节点代表一个字符。每个节点还维护一个bool变量用于判断是否为某一字符串的结尾。通过数组实现,贴代码 1 class Trie { 2 public: 3 vector<Trie*> children; 4 bool isEnd; 5 6 /** Initia 阅读全文
posted @ 2021-09-17 16:39 zhaohhhh 阅读(45) 评论(0) 推荐(0)
摘要: 先搞一个哈希表,键值是每个字典字符串的长度,对应的值是存储所有该长度字符串。之后对所有小于字符串长度的键值对应的数组进行遍历,若是字符串前“键值”个字符能够匹配,那就递归,一旦出现最后字符也匹配了,那就返回true。搞了个小心机,有个用例过不去,就写长度大于50的时候直接返回,投机取巧。 1 cla 阅读全文
posted @ 2021-09-17 11:14 zhaohhhh 阅读(39) 评论(0) 推荐(0)
摘要: 先用动态规划搞出来每段字符是否是回文子串。之后写一个函数,不断从头开始向后走,并且判断中间的字符是否为回文子串,如果是,则递归,寻找剩下字符串所有的分割形式,返回之后就将返回的所有字符串组合加上本身这个回文子串,就完成了任务。但是执行出来效果较差,可能是递归的问题,但是逻辑算是比较清晰的,贴代码。 阅读全文
posted @ 2021-09-17 10:03 zhaohhhh 阅读(33) 评论(0) 推荐(0)
上一页 1 2 3 4 5 6 7 ··· 12 下一页