随笔分类 - C、C++ 刷题
摘要:分析: 这个题也见过,剑指offer,为了检测这个点,要分三步走: 先检测有环不,并检测环中任意节点; 再检测环中个数; 最后让一个指针先走一定步数,然后判断两个指针什么时候处于环的起点终点。
阅读全文
摘要:分析: 这个题我也见过,也是剑指offer上的,但是我错了两处,一是忘了边界处理,二是快指针设置不应该依赖慢指针,应该只看自己的。
阅读全文
摘要:分析: 这个题我见过,剑指offer提供的思路,异或是个很好的工具啊。 前几天没有好好学习,生了一场大病,高烧近40度,现在感觉脑子清醒的时候真好。哈哈哈。我得抓紧时间补功课了。
阅读全文
摘要:分析: 做不出来啊,这是网友的思路,我想到了递归,但是没想到全局变量,导致我一直在想判断到底是左右节点都保留,还是只留最大的,没想到啊。唉,我还是不够看的。
阅读全文
摘要:分析: 思路有,但是一开始不确认正不正确,但是举的例子告诉我这样想目前是对的,于是就写了。 值的注意的是,while(max_num<len-2 && prices[max_num]<prices[max_num+1]),这句话里以后一定要先把值的边界性判断放前面,不然max_num+1超出边界,会
阅读全文
摘要:分析: 就这我还想了半个小时呢,时间复杂度倒是不高,O(N)。但是空间复杂度高,也是O(N)。题解给了一种算法思路,能把空间复杂度降为O(1)。 我昨天想到这个算法的一点头绪,但是没注意保存最大值,导致没再继续往下想,尴尬。
阅读全文
摘要:分析: 用递归的思想,考虑边界情况也是停止条件,就是NULL的情况,返回左右子节点最大值加一就可以了。
阅读全文
摘要:分析: 这个题有意思,我以前还学过数电,当年也是在书上也是认真推导过格雷编码的人,现在。。。 虽然忘了真正编码的过程,但是我看题目描述以及自己动手查看了一下,发现只要只改变一位,总会遍历全部的值,在这个基础上,我想到只改变一位瞎遍历,也不能全瞎,用一个辅助空间真假判断某个值是否已被遍历。 重点来了,
阅读全文
摘要:分析: 神仙题目啊,直接复制过来写个sort()就完了(我看那评论区很多人都这么做的),我一开始不知道后面是补零的,还想着用迭代器去做,然后就是一堆报错啥的,后来所幸直接当排序题做了,这里用的是插入排序,因为相对来说这个比较简单,前后是两个排序好的数组,最差的情况就是后面的那个最小值大于前面的最大值
阅读全文
摘要:分析: 这个算法本质是这样的: 给了一个K位的数组,他的组合应该是从 0: [NULL] [NULL] [NULL] ........ [NULL] 1: [num1] [num2] [num3] ........ [numK] 里面组合得到的。 文字描述:对每一个位置上可能选取0/1,分别代表空/
阅读全文
摘要:分析; 就知道三行的递归过不去,用数组也没差啦,只不过用unsigned long long连50阶楼梯都溢出,本想改用字符串,但是抱着试一试的态度提交一下,没想到过了,看了leecode认为没有五十阶的楼梯吧(不能够啊,西安地铁都几十阶),那就是leecode认为五十阶的楼梯可以装电梯了,只需要一
阅读全文
摘要:分析: 这题比较有意思,一开始想到动态规划,然后用递归写了不到六行的代码,但是提示我时间超时了。后来一想递归的确太占内存和时间了,为了解决这个问题,我想到用循环,但一开始没想到辅助空间实现动态规划,还是只想着从开头遍历,想了一会才觉得用辅助空间,然后就是画图,找找规律,然后发现从目的地回溯真的很好用
阅读全文
摘要:分析: 这个算法时间复杂度,因为只是遍历两遍链表,理论上是O(n),为了得到链表长度多遍历一遍,想了半天也没有其他的路子,后来想想相比一点点挪应该是快的吧。 写的时候有两个关键地方第一时间都没想到,第一是新节点的计算,由于举得案例不全,也巧合,导致我一开始写的不对。第二是没注意到新的节点就是头结点的
阅读全文
摘要:分析: 今天散会早,忍不住又做了一道。和上个题异曲同工,但是这里需要初始化一下。
阅读全文
摘要:分析: 如注释,错了两处,惭愧啊,这个还在剑指offer看过,第二个这种错误还能犯,注意力太不集中了,第一个倒是头疼了一下,cout检测过程中突然想到的。 状态不好,晚上还得开周会,今天不做了。
阅读全文
摘要:分析: 这个题在剑指offer上见过,所以思路还在,写的也算快,唯一有错误的是max_num初始化,我没有考虑全负的情况(也是自己写的有点快,自我感觉太熟了还真不好)。
阅读全文
摘要:分析: 痛快,在分析好要做什么之后,咔咔咔就写出来了,除了一处笔误,其他畅通无阻啊,一次提交就过了。 但是暴露的问题有,这个题情况偏简单,几乎没有边界条件,所以我分析案例不难。其次就是在迭代和循环上犹豫了好久,因为迭代中输入返回被指定了,写起来如上那么复杂,循环想了半天感觉更难写了,所以直接就用迭代
阅读全文
摘要:分析: 这题我写了半天,不是思想有问题,主要部分第一时间就写好了,就卡在二维数组建立上了,不知道为啥string不方便,只好改用char,用了char初始化还不让我循环初始化,只好用memset,下面的就是忘了对超出'9'的复位后-1,其他就没啥了,感觉这个题思想很简单,考的是编程能力。
阅读全文
摘要:分析: 一开始我没有想到全部的案例,在有限的案例下想到一个一般但不足以解决全部案例的想法,后来提交有错时不停加条件,发现越来越乱,于是重新想了个思路。 可是太恶心了啊,好难想到全部的案例!! 尤其是这种数组题。 饶命啊。
阅读全文
摘要:分析: 这个题,我写了一万年,丢人的事简直数不胜数,被自己智商深深打败。 思路根本就不清晰!一点都不清晰!啥啊想的那乱七八糟的! 我一开始想着跳跃式把后面重复的一次复制过来,写到一半想到如果过程中有特多重复的数字,那个数字后续可能会被再次检测出来,后来开始一步一步移,但是就在检测步骤的时候我炸了,我
阅读全文

浙公网安备 33010602011771号