c++
文章平均质量分 51
小小怪侠士
这个作者很懒,什么都没留下…
展开
-
实现二叉搜素树的删除
二叉搜索树的删除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 评论 -
STL迭代器
iterator 迭代器迭代器是一种抽象的设计概念,在设计模式中iterator模式被定义为:提供一种方法,可以按序访问某一聚合物(容器)所含元素,且不暴露该聚合物的内部表达方式。在STL中,迭代器又起着将容器与算法联合到一起的作用。迭代器:设计模式–》元素访问的一种设计模式所有容器都需要遵循相同的设计规范所有容器迭代器的是使用方法都是相同的怎末使用迭代器?迭代器的指针方式和指针类似设计规范:1.begin迭代器:指向第一个元素的位置2.end迭代器:指向最后一个元素的后一个位置正原创 2021-03-24 16:19:17 · 206 阅读 · 1 评论 -
结构体内存对齐
结构体内存对齐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 评论 -
什么是大小端?如何测试某台机器是大端还是小端。
大小端是指数据在内存中的保存方式。顾名思义 大小端 就是大端和小端。大端模式:所谓的大端模式,是指数据的高字节,保存在内存的低地址中,数据的低字节,保存在内存的高地址中。低地址存在高位,高地址存在低位。例子:0000430: e684 6c4e 0100 1800 53ef 0100 0100 0000大端模式下,前32位应该读为:e6 84 6c 4e例如 int a=0x12345678大端模式下存储为12 34 56 78int a =10;小端模式所谓的小端原创 2021-03-07 21:12:50 · 737 阅读 · 0 评论 -
求回文数
给你一个整数 x ,如果 x 是一个回文整数,返回 true ;否则,返回 false 。回文数是指正序(从左向右)和倒序(从右向左)读都是一样的整数。例如,121 是回文,而 123 不是。如果我们要求一个数字是否为回文数的话首先想到的就是将数字本身反转,然后将反转后的数字与原始数字进行比较,如果它们是相同的,那么这个数字就是回文。其后半部分反转后应该与原始数字的前半部分相同。可以分为两步进行1.先排除肯定不为回文数的条件即 当x<0时或者当x最后一位为0并且x不为0时可知这个整数x肯原创 2021-03-04 17:22:18 · 1392 阅读 · 3 评论