c++
文章平均质量分 88
火柴的初心
这个作者很懒,什么都没留下…
展开
-
C++中sizeof的总结
1.基本类型的sizeof2.指针sizeof指针记录了另一个对象的地址,等于计算机内部地址总线的宽度。而且指针变量的sizeof值与指针所指的对象没有任何关系,所以在32位计算机中,一个指针变量的返回值必定是4字节char* pc = "abc";int* pi;string* ps;char** ppc = &pc;void (*pf)(); // 函数指针sizeof( pc ); // 结果为4sizeof( pi ); // 结果为4sizeof( ps ).原创 2020-06-28 20:17:28 · 324 阅读 · 0 评论 -
【总结】字符串类型
1.滑动窗口1.无重复字符的最长字串(leetcode 3)题目描述:给定一个字符串,请你找出其中不含有重复字符的最长子串的长度。示例1:输入: "abcabcbb"输出: 3解释: 因为无重复字符的最长子串是 "abc",所以其长度为 3。示例 2:输入: "bbbbb"输出: 1解释: 因为无重复字符的最长子串是 "b",所以其长度为 1。...原创 2020-05-02 11:30:31 · 887 阅读 · 0 评论 -
【总结】二分查找
二分查找存在三个分支,其中两个分支用于边界的搜索模板2:退出循环时,left==right成立1.山脉数组的峰顶索引(leetcode 852)题目描述:我们把符合下列属性的数组A称作山脉:A.length >= 3存在 0 < i< A.length - 1 使得A[0] < A[1] < ... A[i-1] < A[i] >...原创 2020-05-11 15:18:07 · 2312 阅读 · 0 评论 -
C++ STL中的set和map
目录1.set头文件初始化基本方法插入删除功能参考:1.set 头文件 #include <set>using namespace std; 初始化 template < class T, // 键 key 和值 value 的类型 class Co...原创 2020-04-05 10:52:26 · 766 阅读 · 0 评论 -
【总结】数组类解题归纳
1.有序数组去重题目描述:给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。不要使用额外的数组空间,你必须在原地修改输入数组并在使用O(1)额外空间的条件下完成。#include <iostream>using namespace std;int removeDuplicates(int num[],int l...原创 2020-04-30 10:48:23 · 557 阅读 · 0 评论 -
【总结】动态规划类型
1.按摩师(leetcode 面试题17.16)日期:2020/3/24 题目描述:一个有名的按摩师会收到源源不断的预约请求,每个预约都可以选择接或不接。在每次预约服务之间要有休息时间,因此她不能接受相邻的预约。给定一个预约请求序列,替按摩师找到最优的预约集合(总预约时间最长),返回总的分钟数。注意:本题相对原题稍作改动示例 1:输入: [1,2,3,1]输出: 4解释:...原创 2020-07-01 21:51:43 · 669 阅读 · 0 评论 -
【总结】链表类相关题目
1.快慢指针1.反转链表(leetcode 24,206)题目描述:定义一个函数,输入一个链表的头节点,反转该链表并输出反转后链表的头节点。输入: 1->2->3->4->5->NULL输出: 5->4->3->2->1->NULL实现:定义三个指针: pre 、cur 、next。 pre 在前 ,c...原创 2020-05-01 10:00:25 · 344 阅读 · 0 评论 -
【总结】递归、回溯、深度优先、广度优先
1.二叉树的层次遍历给定一个二叉树,返回其按层次遍历的节点值。 (即逐层地,从左到右访问所有节点)。例如:给定二叉树:[3,9,20,null,null,15,7], 3 / \ 9 20 / \ 15 7返回其层次遍历结果:[ [3], [9,20], [15,7]]实现 判断根节点是否为NULL...原创 2020-05-26 22:33:08 · 2705 阅读 · 1 评论 -
C++常用数据结构
常用数据结构目录1.线性表定义:特点:1.1顺序表定义:特点:实现:基本操作:c语言版本:c++版本:1.2链表定义:特点:实现:基本操作:完整程序c++版本...原创 2019-10-23 21:45:33 · 14517 阅读 · 1 评论 -
c ++继承
目录继承的含义:(常规->具体)派生类:重定义、重载与重写重定义:(redefining)重载:(overload)重写:(override)派生类的对象具有多个类型不继承的函数:构造函数和析构函数继承的含义:(常规->具体)继承意味着可以先定义并编译常规形式的类,再定义这个类的更加具体的形式并继承这个类的所有属性,即一个基类创建派生类...原创 2019-10-14 11:32:52 · 530 阅读 · 0 评论 -
常用的查找与排序算法
目录工具1.生成随机数组2.测试排序算法的运行时间3.打印输出排序1.冒泡排序原理伪代码实现输出2.选择排序原理实现输出时间复杂度:O(n^2)3.插入排序原理实现时间复杂度:O(n^2)4.归并排序原理实现结果查找:1.顺序查找原理:实现:时间复杂度:O(N)...原创 2019-10-16 22:25:55 · 947 阅读 · 0 评论 -
C++基础编程题
目录代码存放地址:https://github.com/Xke1718He/C-Practice1.最大公约数和最小公倍数2.判断素数3.计算字符串的ASCII码4.字符类型统计器5.三位数反转6.交换变量7.鸡兔同笼8.三整数排序9.最长回文字符串10.有序数组去重11.年份12.x的平方根二分查找基本思想:问题:错误...原创 2019-10-06 20:23:36 · 5797 阅读 · 5 评论 -
C++特性学习
1.explicit关键字 explicit关键字只需用于类内的单参数构造函数前面。由于无参数的构造函数和多参数的构造函数总是显示调用,这种情况在构造函数前加explicit无意义。google的c++规范中提到explicit的优点是可以避免不合时宜的类型变换,缺点无。所以google约定所有单参数的构造函数都必须是显示的,只有极少数情况下拷贝构造函数可以不声明称explic...原创 2019-10-06 21:02:40 · 300 阅读 · 0 评论 -
c++学习(三)memset memcpy libconfig++
目录1.memset2.memcpy3.libconfig使用4. struct 结构体1.memset注意:定义变量时一定要进行初始化,尤其是数组和结构体这种占用内存大的数据结构。在使用数组的时候经常因为没有初始化而产生“烫烫烫烫烫烫”这样的野值,俗称“乱码”。memset() 函数可以说是初始化内存的“万能函数”,通常为新申请的内存进行初始化工作。它是直接操作...原创 2019-12-27 21:16:57 · 304 阅读 · 0 评论 -
c++学习(二)vector中erase方法的注意事项
最近在编写传感器预处理的程序时,遇到了vector容器的erase方法的一个坑。erase的函数原型有两种形式:1.iterator erase(iterator position);//删除当前位置的元素。2.iterator erase(iterator first, iterator last);//删除当前区间的元素。vector<int> veci;vec...原创 2019-03-05 16:17:17 · 3068 阅读 · 0 评论 -
c++学习(一)常量 全局变量 局部变量 静态变量 外部变量
1.常量c++中常量修饰符为const,告诉编译器这个名字是常量。如果定义了某对象为常量,然后试图想修改它,编译器会报错的。const int x=10;注意:1)在C中,编译器对待const如同变量一样,只不过带有一个特殊的标记,意思是:“不要改变我”。2)在c++中,一个const常量必须有初始值。2.全局变量全局变量顾名思义就是在所有函数体(包括main函数)的...原创 2018-11-28 21:04:16 · 1422 阅读 · 0 评论