![](https://img-blog.csdnimg.cn/20201014180756923.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
C++
文章平均质量分 53
童童同学
SLAM IN SLAM
展开
-
JZ11 - JZ15
JZ11 二进制中1的个数该题中求二进制中1,考虑从低位出发,每次消除最低位的1,如检测数字是n,那么其与n-1的与运算,会导致最低位的1变为0,通过这个性质,我们保存与运算的结果,并将其存放在n中,只需要记录一共进行了多少次与运算后,n=0,就可以得到1的个数,代码如下:class Solution {public: int NumberOf1(int n) { int ans=0; while(n){ ++ans;原创 2021-09-21 21:10:45 · 87 阅读 · 0 评论 -
JZ6 - JZ10
JZ6 旋转数组的最小数字根据 题中给出的要求,空间复杂度为O(1),时间复杂度O(logn);那么很明显,肯定是二分法注意算法逻辑,左端数字肯定大于等于右端数字,通过这个特性进行剪枝;也就是当二分到左端小于右端时,左端就是答案class Solution {public: int minNumberInRotateArray(vector<int> rotateArray) { int left = 0, right = rotateArray.size()原创 2021-09-19 17:59:47 · 130 阅读 · 0 评论 -
JZ1-JZ5
JZ1 二维数组中的查找//本体暴力,时间复杂度O(mn), 根据题中给的规律://每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。//考虑从数组矩阵右上方切入,如果target小于当前位置左边的数字,左移,否则下移//那么时间复杂度就到了O(m+n)class Solution {public: bool Find(int target, vector<vector<int> > array) { if(array.emp原创 2021-09-18 13:23:49 · 166 阅读 · 0 评论 -
C++11常用新特性
C++11是一种目前最常用的C++标准,可以说不同标准下的语言,给人的感觉如同不同语言。面试中的C++,除了基本语法和基本特性(如:三大特性:封装、继承、多态,虚函数等)对C++11标准的考察也是重中之重。一般会围绕智能指针、lambda、auto关键字等典型特性来询问。下面是关于C++11标准的回答。1、C++11有哪些新特性?nullptr代替了NULL引入了auto和decltype这两个关键字实现了类型推导基于范围的for循环 for(auto& i: res)类和结构体中的原创 2021-09-12 20:43:06 · 440 阅读 · 0 评论 -
C++函数的形参和实参以及*& 用法
形参和实参实参(argument):全称为"实际参数"是在调用时传递给函数的参数. 实参可以是常量、变量、表达式、函数等, 无论实参是何种类型的量,在进行函数调用时,它们都必须具有确定的值, 以便把这些值传送给形参。 因此应预先用赋值,输入等办法使实参获得确定值。形参(parameter):全称为"形式参数" 由于它不是实际存在变量,所以又称虚拟变量。是在定义函数名和函数体的时候使用的参数,目的是用来接收调用该函数时传入的参数.在调用函数时,实参将赋值给形参。因而,必须注意实参的个数,类型应与形参一原创 2020-11-13 10:40:43 · 8546 阅读 · 0 评论 -
C++中NULL和nullptr的区别
传统意义上来说,c++把NULL、0视为同一种东西,有些编译器将NULL定义为 ((void*)0),有些将其定义为0.c++不允许直接将void隐式的转化为其他类型,但是如果NULL被定义为 ((void)0),当编译char *p = NULL;NULL只好被定义为0。还有:void func(int);void func(char*);如果NULL被定义为0,func(NULL)会去调用void func(int),这是不合理的所以引入nullptr,专门用来区分0、原创 2020-11-12 15:52:13 · 132 阅读 · 0 评论 -
VS Code C++语言调试或执行程序按回车窗口闪退的问题
由于刚下载好VS Code,安装调试过程中发现,测试程序无法读出键盘输入数据,一旦按下回车键,就会关闭CMD窗口,闪退,终端显示:终端将被任务重用,按任意键关闭。图片如下:更改后的代码:其实就只用在控制台应用程序exit(0);前一行加上 system(“pause”); 即可(别忘记;),使其在退出程序前调用系统的暂停命令暂停命令行,如果不加的话程序运行就会立即退出。此时记得加上头文件 #include<stdlib.h>结果:虽然依然显示终端将被任务重用,按任意键关闭,CMD窗口已经原创 2020-05-24 09:03:34 · 6869 阅读 · 2 评论