一.C语言基础
1.幂级数展开
解析:
2.逗号表达式和逗号分隔符
①int sum=7,num=7; sum=num++,sum++,++num;//逗号分隔符,sum=8 ②int sum=7,num=7; sum=(num++,sum++,++num);//逗号表达式,sum=9
3.指针数组
题目所给参数为指针数组,也就是二级指针,指向指针的指针。B是二级指针数组,数组的内容是二级指针,不符合。D是数组指针,不符合。
4. 运算符优先级
一开始掉坑先算z+=x,结果为4,没这个选项才反应过来。 复合赋值运算符 += 关系运算符 > 条件运算符 ? : 增强运算符 ++ 优先级:增强运算符>关系运算符>条件运算符>赋值运算符
二.C++基础
1.数组合法定义
一开始不知道D问题在哪,经指点:数组变量 a是常量指针,地址固定不可更改(char* const) ,不能赋值。
2.判断偶数
代了几个特殊值发现可以就选择正确了,后来经指点代6发现不满足,据说这个是判断是否是2 的n次方幂。。
3.容器特点
属于是忘了。。set底层是红黑树 O(logn),Hash_map 底层哈希表 O(1),Deque尾部可以直接修改O(1)
三.数据结构
1.层序遍历
看到队列先进先出,应首先想到二叉树层序遍历,一开始没看懂for循环,原来child_node意思就是左孩子与右孩子
2.求字符串子串个数
非空子串的个数共有n(n+1)/2=55个,相同子串算一个,1个字符时有3个w,2个q,2个. 2个字符时有2个ww 故应减去:(2+1+1+1)=5
|