c++学习
小小怪侠士
这个作者很懒,什么都没留下…
展开
-
快速排序 C++实现
快速排序有多种实现方法:下面我就介绍一下hoare法1.hoare法就是定义必须先找到一个基准值,一般我们会选择第一个元素为基准值。再定义两个指针begin,end,一个指向第一个位置,一个指向第二个位置。然后先从后向前找第一个小于基准值5的元素,即上图中的3然后再从前往后找第一个大于基准值5的元素,即上图中的8然后将他们两个进行交换就得到了如下的排列方式这时候继续上面的步骤先从后向前找小于基准值的元素,但是前提是begin必须<end;当begin与end相遇时就将基准值与be原创 2021-08-24 20:00:08 · 302 阅读 · 0 评论 -
实现二叉搜素树的删除
二叉搜索树的删除1.思路是:先找到删除节点的位置。然后判断是否找到了这个元素。如果找到了。就删除节点。而删除节点又分为四种情况1.删除节点没有子节点如上图我们假如要删除 9 直接删除该节点即可..2.删除节点没有右子树如上图,假如我们要删除1,那麽我们就不能直接删除该节点 ,因为他还有子节点,如果我们直接让1的父节点的左孩子直接置为null,就会丢失1的子节点。所以应该将1的节点连接在节点3下面。3.删除节点没有左子树如上图,假如我们要删除1,那麽我们就不能直接删除该节点原创 2021-07-28 16:29:42 · 168 阅读 · 0 评论 -
带你梳理c++多态知识
多态:顾名思义就是相同的事情经过不同的对象来做得到不同的结果例如买票问题,成人买票时点击购买就会出现全票价格而学生买票就会出现的是半价价格相同的买票行为,不同的对象来做,产生了不同的结果,这种行为就是多态行为。实现多态必须满足的条件:1.前提:继承2.虚函数3.调用虚函数的类型必须是指针或者引用4.虚函数需要被重写5.一般都是父类的指针或引用调用虚函数虚函数重写:1.函数名,参数列表,返回值和父类虚函数完全相同2.协变:返回值可以不是同一个类型,但是必须是由继承关系的指针或者引用原创 2021-07-28 09:48:17 · 121 阅读 · 0 评论 -
append函数的用法
append()函数类似于尾插就是给元素后面追加一个字符串string str ;string str2 =“123”;1.str.append(str2);就是给str后面追加一个str2即输出为123str.strappend(str2,1,1);就是给后面追加上str2中从第二个元素开始连续一个元素1232str.append(“abc”);就是给str后面追加上abc1232abcstr.append(“123456”,6);就是给str后面加上字符串原创 2021-03-24 17:08:20 · 45084 阅读 · 3 评论 -
resize函数的作用
resize函数作用:修改有效字符个数resize(n)如果有效字符的个数增加,则新增的位置填充‘\0’resize(n,ch)如果有效的字符的个数增加,则新增的位置填充ch如果size减小,如下图。原创 2021-03-24 16:17:45 · 1691 阅读 · 1 评论 -
什么是链表
什么是链表?链表是一种物理存储结构上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链链表是线性排列的称为节点的元素的集合。接次序实现的 。每个节点在列表中都包含一个数据字段和一个指向下一个节点的指针,称为next 。 链接列表的第一个和最后一个节点通常称为列表的头和尾。 头指针指向第一个节点,最后一个节点指向空值。 请注意,头部不是单独的节点,而是对第一个节点的引用。 当列表为空时,头指针指向空。链表总共有八种分为:单向 双向 带头 不带头 循环 非循环虽然有八种链表但是实际中原创 2021-03-21 15:01:31 · 466 阅读 · 4 评论 -
结构体内存对齐
结构体内存对齐1.为什么要实现内存对齐2.结构体怎末对齐3. 举例说明4.如何让结构体按照指定的对齐参数进行对齐5.如何知道结构体中某个成员相对于结构体起始位置的偏移量1.为什么要实现内存对齐因为在内存中我们一般读取数据不是一个一个内存来读取,一般都是分为一个个内存块来读取。例如:a占一个字节 ,b占四个字节因为在内存中我们一般读取数据不是一个一个内存来读取,一般都是分为一个个内存块来读取。如果我们要读取b这个数据就需要像下面这样将b分为两段然后再进行剪切拼接,将b的前三个字节和第二段的b的第四原创 2021-03-09 14:32:16 · 3004 阅读 · 15 评论 -
引用和指针的不同点
引用和指针的不同点1.引用在初始化是引用一个实体后,就不能引用其他的实体,而指针可以在任何时候指向一个同类型的实体。2.引用在定义时必须初始化,而指针不需要。3.在sizeof中含义不同:引用结果为引用类型的大小,但指针始终是地址空间所占字节个数。4.没有null引用,但是有null指针。5.引用自加即引用的实体增加一,指针自加,即指针向后偏移一个类型的大小6.引用比指针更加安全。7.访问实体方式不同,指针需要显式解引用,而引用是编译器自己处理。8.指针有多级指针,但是引用没有多级引用。原创 2021-03-08 18:29:16 · 2166 阅读 · 1 评论