2021年7月26日
摘要: 详细思路 left是已经处理好的,right是需要判断的,不断遍历,不行的right++,行的left++并放入并right++ 精确定义 left已经处理好 right需要判断的 ans left处理过的个数 class Solution { public: int removeElement(v 阅读全文
posted @ 2021-07-26 22:58 offer快到碗里来~ 阅读(35) 评论(0) 推荐(0)
摘要: 详细思路 双指针,leftright,right不断找新数字,left不断存储合适的数字,left每次走都要计数,如果left和right相同说明重复了right++,如果不同说明不重复放进来leftright++ 精确定义 left已经不重复 ans 不重复的个数 right是需要检查的数字 cl 阅读全文
posted @ 2021-07-26 22:40 offer快到碗里来~ 阅读(36) 评论(0) 推荐(0)
摘要: 详细思路 遍历当前节点,找出尾节点头结点,翻转,接上翻转后的链表,移动当前节点,怎么翻转,保存cur1Next,建立tailNext节点,cur1指向tail->next,tail指向cur1,cur1回到cur1Next,重复直到cur1指向tail, 精确定义 cur已经翻转好的节点 head 阅读全文
posted @ 2021-07-26 22:29 offer快到碗里来~ 阅读(74) 评论(0) 推荐(0)
摘要: 详细思路 大于1才用从左到右,每次找到右一右二两个节点,当前节点next指向右二,右一next指向右二的next,右二next指向右一,做完当前节点向右两次,遇到空就不用了 精确定义 cur当前已解决 first右一 second右二 class Solution { public: ListNod 阅读全文
posted @ 2021-07-26 20:10 offer快到碗里来~ 阅读(39) 评论(0) 推荐(0)
摘要: 多态类型是指声明或者继承了至少一个虚函数的类型 对于多态类型,一些信息必须延迟到运行时才可以确定,例如它的实际类型、所调用的虚函数的地址等 类型B继承了声明有虚函数的类型A,因此A和B都是多态类型。 struct A { virtual void foo() {} // 声明虚函数 }; struc 阅读全文
posted @ 2021-07-26 16:22 offer快到碗里来~ 阅读(98) 评论(0) 推荐(0)
摘要: A: int a1; int a2; virtual void fun1(){} virtual void fun2(){} B继承A,int b1; int b2; A: vptr指向数组首元素,数组元素是A::fun1 A::fun2函数地址 a1; a2; B: A(vptr指向数组首元素,数 阅读全文
posted @ 2021-07-26 16:02 offer快到碗里来~ 阅读(73) 评论(0) 推荐(0)
摘要: 两个int sizeof//8 int a1;//0 int a2;//4 两个int+一个虚函数fun1 sizeof//12 (vptr//0) int a1;//4 int a2;//8 两个int+两个虚函数fun1fun2 sizeof//12 (vptr//0) int a1;//4 i 阅读全文
posted @ 2021-07-26 14:54 offer快到碗里来~ 阅读(164) 评论(0) 推荐(0)
摘要: 简洁易懂讲清原理,讲不清你来打我~ 虚函数是实现的,作用是为了让这个函数在子类可以被覆盖,编译器可以后期绑定达到多态,纯虚函数只是一个接口,是函数的声明,留到子类去实现 定义纯虚函数的目的是使派生类仅仅基础基类的函数接口 虚函数的目的是告诉子类设计者,如果不想写虚函数,可以借助基类的确实版本 非虚函 阅读全文
posted @ 2021-07-26 14:29 offer快到碗里来~ 阅读(81) 评论(0) 推荐(0)
摘要: 详细思路 如果有第一条链表,作为新链表,对于输入的每一条链表,都和新链表合并,合并两链表需要建立哑结点,遍历两条链表,哪个小就接到第三条链表,一条为空了就把另一条剩余的接到第三条链表,复杂度[image:1627275123812.png] 精确定义 ans不断更新合并的链表 list和ans合并的 阅读全文
posted @ 2021-07-26 14:17 offer快到碗里来~ 阅读(42) 评论(0) 推荐(0)
摘要: 详细思路 尝试添加(,进入下一层,或者不要)而尝试添加(,进入下一层,当长度为两倍时检查,检测从头开始,如果左边括号一旦少于右边括号就是错的,复杂度[image:1627265414884.png] 精确定义 curArr当前已经添加的括号 depth当前正在处理第几个字符 m长度的两倍 balan 阅读全文
posted @ 2021-07-26 10:40 offer快到碗里来~ 阅读(30) 评论(0) 推荐(0)
摘要: 简洁易懂讲清原理,讲不清你来打我~ 详细思路 同时遍历两个链表,小的放到新链表结尾,一样大取第一个,一条为空时走另一条,给三条链表哑结点 精确定义 cur1第一条链表已经遍历到某个节点 cur2第二条链表已经遍历到某个节点 cur3第三条链表已经合成到某个节点 dummy123 class Solu 阅读全文
posted @ 2021-07-26 09:33 offer快到碗里来~ 阅读(88) 评论(0) 推荐(0)
摘要: 详细思路 遇到左括号,希望后面会有同类型有括号,放入栈,后遇到的左括号必须先闭合,所以正好用栈,遇到右括号,如果栈为空或者栈顶元素不是对应右括号都是错的,否则把那个对应类型右括号pop,如果长度是奇数直接错 精确定义 c正在遍历的字符 stk存储左括号或遇到右括号的时候栈顶正好是左括号的栈 clas 阅读全文
posted @ 2021-07-26 09:33 offer快到碗里来~ 阅读(36) 评论(0) 推荐(0)