上一页 1 2 3 4 5 6 7 ··· 11 下一页
摘要: #include <iostream> using std::cout; class A{ public: virtual void f(){cout << "A f\n";} }; class B:public A{ public: void f(){cout << "B f\n";} }; vo 阅读全文
posted @ 2019-11-15 11:20 newbird2017 阅读(146) 评论(0) 推荐(0) 编辑
摘要: 两个原则: 1、一个自动变量,多数在栈上,起始地址默认要求是其自身大小的整数倍。 即 char c; c的地址可以任意。 int a; a的地址必须是sizeof(int)的整数倍。 2、一个结构体的大小,必须是其内部成员size的最大公倍数。 以代码为例,看看发生了什么。 struct align 阅读全文
posted @ 2019-11-14 17:19 newbird2017 阅读(204) 评论(0) 推荐(0) 编辑
摘要: 找出一个数组中,出现超过半数的元素。 怎么做呢?分而治之,两人分组,如果两个相同,就保留,否则都不要。最后如果多出来一个,也保留。 具体情况就是: 抽屉原理: 假设现在有2k个数,然后elem至少有k+1个。 把k+1个数,放到k个抽屉里,一定会有重复的。 比如: 1, 2, 1, 2, 1, 2, 阅读全文
posted @ 2019-05-17 16:47 newbird2017 阅读(74) 评论(0) 推荐(0) 编辑
摘要: vector::push_back操作,保证了如果过程中出现异常,vector不会发生变化。 push_back过程中,可能会因为已有内存空间不够,申请新的内存,同时把原内存中已有的元素,放到新申请的内存中。 这时候,如果移动构造不保证没有异常,就会发生一件事: 为了保证前述性质,不得不调用copy 阅读全文
posted @ 2019-04-23 16:04 newbird2017 阅读(303) 评论(0) 推荐(0) 编辑
摘要: 一般来说,swap操作将容器内容交换不会导致容器的指针、引用、迭代器失效。 但当容器类型为array和string时除外。 原因在于:SSO (Short String Optimization 指C++针对短字符串的优化。) 默认情况下,C++的std::string都是存储在heap中,导致访问 阅读全文
posted @ 2019-04-17 11:50 newbird2017 阅读(205) 评论(0) 推荐(0) 编辑
摘要: static 变量在类声明中只是声明,要在外面单独定义。 不能在对象中直接访问?可以访问。但是要在外面定义。 初始化列表不能对静态成员做初始化。 静态成员变量遵守普通成员变量的规则。 a.i A::i 都可以。 静态函数中this不可用。 阅读全文
posted @ 2019-04-01 19:19 newbird2017 阅读(124) 评论(0) 推荐(0) 编辑
摘要: 这里比较重要的是,不要一上来就判断mid 和 target有没有关系。因为数组是无序的,这样的判断毫无结论,只会搞的更复杂。应该先想办法判断出哪一侧是有序的。class Solution { public: int search(vector& a, int target) { int low, high, mid; low = 0, h... 阅读全文
posted @ 2019-03-29 14:57 newbird2017 阅读(152) 评论(0) 推荐(0) 编辑
摘要: 首先这是一个递归,回溯,在最深的地方判断,满足条件的话,就存储起来。 另外,一个容易忽略的点就是,为什么cur.push_back以后要pop_back? 因为是递归调用,你调用之后,不知道被修改成啥样了。如果每一个深度的函数,都能保证,自己这一层调用完之后,完璧归赵,那么... 需要再研究,这一块 阅读全文
posted @ 2019-03-29 09:41 newbird2017 阅读(101) 评论(0) 推荐(0) 编辑
摘要: class Solution { public: map dict; vector letterCombinations(string digits) { dict['2'] = "abc"; dict['3'] = "def"; dict['4'] = "ghi"; dict['5'] = "jk... 阅读全文
posted @ 2019-03-28 18:04 newbird2017 阅读(105) 评论(0) 推荐(0) 编辑
摘要: https://leetcode.com/problems/3sum/ 套路比较常见了,最重要的是去重。还是没法一次通过。 阅读全文
posted @ 2019-03-28 15:32 newbird2017 阅读(180) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 ··· 11 下一页