随笔分类 -  刷题

上一页 1 ··· 7 8 9 10 11 12 下一页
摘要:自己写的 father != NULL一定要注意,这种情况一个是让father->left能不报错,还有一个就是解决了一个bad case,就是这个结点就是最后一个结点就返回NULL,或者说万一父结点全是右子树的 阅读全文
posted @ 2017-07-25 10:25 有梦就要去实现他 阅读(193) 评论(0) 推荐(0)
摘要:错误代码: 正确代码: 可以看到不同点只是把current->val == pHead->val和current != NULL换了一下位置 错误的代码报错报的是:段错误:您的程序发生段错误,可能是数组越界,堆栈溢出(比如,递归调用层数太多)等情况引起 阅读全文
posted @ 2017-07-17 16:31 有梦就要去实现他 阅读(226) 评论(0) 推荐(0)
摘要:一个错误代码 若改成int depth = 0; return IsBalancedCore(pRoot,depth); 就对了。IsBalancedCore这个函数的第二个参数是传参数,需要引用,用的时候不能为常量0,必须是一个参数。 IsBalancedCore中depth参数必须&引用,如果不 阅读全文
posted @ 2017-07-17 15:16 有梦就要去实现他 阅读(173) 评论(0) 推荐(0)
摘要:另一种写法 必须是if(!result),不能用else,因为如果两个树的头是相同的,但左右却不同就会报错。这种情况应该是继续迭代第一个树的左右节点,但用else,就会直接进入第一个if并返回值了 {8,8,7,9,2,#,#,#,#,4,7},{8,9,2}用else就不行 阅读全文
posted @ 2017-07-16 22:18 有梦就要去实现他 阅读(147) 评论(0) 推荐(0)
摘要:不用迭代器的代码 mid是在vin中的索引,与pre相关的只是个数,所以用mid-start_vin来表示有多少个,然后再加上之前的开始坐标 阅读全文
posted @ 2017-07-15 22:58 有梦就要去实现他 阅读(170) 评论(0) 推荐(0)
摘要:这种方法没用迭代,而是使用了循环的方式 阅读全文
posted @ 2017-07-14 17:53 有梦就要去实现他 阅读(176) 评论(0) 推荐(0)
摘要:错误代码 会报“段错误:您的程序发生段错误,可能是数组越界,堆栈溢出(比如,递归调用层数太多)等情况引起” 因为k的数字可能大于整个链表的长度,这时p1可能指向空指针,空指针的next就会报错 如果去计算一遍整个链表的长度,再判断k与链表长度的大小,这样还是会和笨办法一样遍历两次链表,直接在for循 阅读全文
posted @ 2017-07-11 10:36 有梦就要去实现他 阅读(183) 评论(0) 推荐(0)
摘要:int a[n] = {0}; 阅读全文
posted @ 2017-05-23 22:24 有梦就要去实现他 阅读(693) 评论(0) 推荐(0)
摘要:自己的写法 更简洁的代码 用循环的方法做: 注意一个问题,end只能等于mid - 1,不能等于mid,同样begin只能等于mid + 1,不能等于mid。如果换成mid,当只有两个数的时候,会陷入死循环! 阅读全文
posted @ 2017-05-23 17:35 有梦就要去实现他 阅读(186) 评论(0) 推荐(0)
摘要:错误写法 整个代码的return都是在if条件下return的,但万一都不满足if条件,就没有了return。 阅读全文
posted @ 2017-05-23 16:53 有梦就要去实现他 阅读(165) 评论(0) 推荐(0)
摘要:错误代码 阅读全文
posted @ 2017-05-23 15:02 有梦就要去实现他 阅读(140) 评论(0) 推荐(0)
摘要:错误代码: 最后两个if语句的目的是,最后一次迭代,两个链表中剩下的直接连接最后一次比较的数值,同时也是迭代停止的标志。虽然大if语句中比较大小得到的Node是正确的值,但每次迭代只要pHead2不为NULL都要改变正确的Node值为pHead2的值。 阅读全文
posted @ 2017-05-21 20:51 有梦就要去实现他 阅读(115) 评论(0) 推荐(0)
摘要:错误写法: else if这一句会报错,else if应该是紧跟在if语句后面,中间不能插入其他语句,不然else if不知道之前的if是哪一个。 正确写法: 这里要强调一下else if与if 的不同。这段代码,把else if换成if也是正确的,但并不代表else if和if是一样的。 现在假设 阅读全文
posted @ 2017-05-20 16:53 有梦就要去实现他 阅读(185) 评论(0) 推荐(0)
摘要:错误的代码: 阅读全文
posted @ 2017-05-17 14:34 有梦就要去实现他 阅读(208) 评论(0) 推荐(0)
摘要:这个代码会报错 修改为: 或者修改为 阅读全文
posted @ 2017-05-17 13:57 有梦就要去实现他 阅读(196) 评论(0) 推荐(0)
摘要:段错误:您的程序发生段错误,可能是数组越界,堆栈溢出(比如,递归调用层数太多)等情况引起 这个错误自己经常犯,目前有以下两种情况: 1.vector为空,去访问a[i],即vector中的某一个位置的值 2.二叉树指针为NULL,却去访问左右节点,类似tree->left。所以在访问前的前提条件,一 阅读全文
posted @ 2017-05-16 17:15 有梦就要去实现他 阅读(1237) 评论(0) 推荐(0)
摘要:先序遍历 阅读全文
posted @ 2017-05-16 14:32 有梦就要去实现他 阅读(212) 评论(0) 推荐(0)
摘要:这个题的错误和c++ primier中名字的作用域例子相似。只是这里将int换成了vecto<int>这种形式。 这个代码报“段错误:您的程序发生段错误,可能是数组越界,堆栈溢出(比如,递归调用层数太多)等情况引起”的错误。 在else里新建了一个局部变量B,覆盖了全局变量。但两个for语句访问的B 阅读全文
posted @ 2017-05-15 17:01 有梦就要去实现他 阅读(297) 评论(0) 推荐(0)
摘要:这是整个调试, for (int i:s) cout<<i<<endl;这句话是c++11特性下的一种遍历方式 在编译的时候需要加-std=c++11,即g++ 41.cpp -std=c++11 如果不加就会报错,因为这是c++11的特性 这个题目还可以直接把第一个求出来作为结果,但是这种情况有个 阅读全文
posted @ 2017-05-14 23:14 有梦就要去实现他 阅读(267) 评论(0) 推荐(0)
摘要:剑指上用了指针传递,这里用的引用传递 阅读全文
posted @ 2017-05-14 22:49 有梦就要去实现他 阅读(162) 评论(0) 推荐(0)

上一页 1 ··· 7 8 9 10 11 12 下一页