自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(10)
  • 收藏
  • 关注

原创 c++学习笔记4

成员变量和成员函数是分开存储,在c++中只有非静态成员变量菜属于类的对象上。也就是说静态成员变量,静态成员函数,非静态成员函数的存储都不在类上。4赋值运算符重载:如果类中有属性指向堆区浅拷贝会使堆区空间被释放两次导致程序崩溃,固要用深拷贝。将要做友元的类的定义复制一份到要访问的类的开头并且前面加friend。方法1:在类内写一个成员函数,并以operator+当函数名。1,加号运算符重载:实现两个自定义类型相加的运算。2,左移运算符重载:可以输出自定义数据类型。3,递增运算符重载:实现自己的整型数据。

2024-04-24 19:32:18 337

原创 c++学习笔记(3)

(在类中创建一个堆区的数据,利用析构函数对其进行释放,如果用的浅拷贝会将其释放两次,导致程序崩溃。3,值方式返回局部对象。c++认为万事万物都皆为对象,对象有其属性和行为(统称为成员),具有相同性质的对象,可以抽象称为类。总结:如果属性有在堆区开辟的,一定要自己提供拷贝构造函数,防止浅拷贝带来的问题。当其他类对象作为本类成员,构造时先构造类对象,再构造自身,析构顺序与构造相反。1,构造函数(初始化)和析构函数(清理,(若堆区有内存,对其释放))c++类中的成员可以是另一个类的对象,我们称该成员为对象成员。

2024-04-20 17:19:25 250

原创 c++学习笔记(2)

1,如果自己传入数据,就用自己的数据,如果没有那么用默认值。3,函数的声明和实现只能有一个有默认参数。注意事项:不用返回局部变量的地震,局部变量在栈区,由编译器自动释放,即函数调用完后该变量就被销毁,传回的地址是野指针。3,栈区(程序运行后):由编译器自动分配释放,存放函数的参数值,局部变量等。数据10是存放在堆区,指针p存放在栈区,p指向的是在堆区的10的地址。1,代码区(程序运行前):存放函数体的二进制代码,由操作系统进行管理的。若调用函数时传一个参数,则函数报错,若传两个参数,则调用第一个函数。

2024-04-15 17:19:50 176

原创 c++学习笔记(1)

在C++中三目运算符返回的是变量,可以继续赋值。需加头文件#include<string>rand() %n随机生成0到n-的数。3,const既修饰指针,又修饰常量。1,#define 常量名 常量值。string 变量名=“字符串”true表示1,false表示0。1,const修饰指针,常量指针。2,const修饰常量,指针常量。const修饰指针有三种情况。2,const 修饰的变量。水平制表符\t前一共占八位。通过c++将变量的值输出。

2024-04-13 17:46:46 203

原创 数据结构与算法6(串,数组和广义表)

广义表(又称列表 Lists)是n>=0 个元素 ao, a.. .... an-1的有限序列,其中每一个ai或者是原子,或者是一个广义表。串相等:当且仅当两个串的长度相等并且各个对应位置上的字符都相同时,这两个串才是相等的。箭头左边的模式串和主串相互匹配,且模式串有两个相等的子串,称为公共前后缀,n维数组:若 n-1 维数组中的元素又是一个一维数组结构,则称作 n维数组。子串:一个串中任意个连续字符组成的子序列(含空串)称为该串的子串。其中:LS为表名,n为表的长度,每一个 ai为表的元素。

2024-03-18 20:18:44 266

原创 数据结构与算法5(栈和队列)

​栈 (stack)是限仅在一端(通常是表尾)进行插入和删除操作的线性表。又称为后进先出 (Last In First Out) 的线性表,简称LIFO结构。front,rear虽然称做指针,但不是指针变量,是用来表示数组中元素位置的下标,栈和队列是限定插入和删除只能在表的“端点”进行的线性表。​从栈顶(即表尾)删除最后一个元素的操作,称为出栈。队列插入也只能在最后一个元素,删除只能删第一个元素。​设top指针指示真正的栈顶元素之上的下标地址。​插入元素到栈顶(即表尾)的操作,称为入栈。

2024-03-16 14:05:44 325

原创 数据结构与算法4(线性表3)

因为循环链表中表的操作常常在表的首尾进行。若从头结点开始找末尾元素,要找n次。固常用尾指针表示循环链表。线性表合并后没有相同元素。有序表合并可有相同元素。

2024-03-12 20:53:10 143

原创 数据结构与算法3(线性表2)

链式存储结构,存储每一个结点时,既包括数据域(该元素内容),又包括指针域(下一个结点地址)。​1,无头结点时,头指针为空表示空表。有头结点时,头结点的指针域为空表示空表。​首元结点的地址保存在头结点的指针域中,所以在链表的第一个位置上的操作和其它位置一致,无须进行特殊处理;​结点有两个指针域(一个指向前一个指向后)的链表,称为双链表。​结点只有一个指针域的链表,称为单链表或线性链表。​头结点在算链表元素个数时并不算在内。​头结点的好处(链表几乎都有头结点)​首尾相接的链表称为循环链表。

2024-03-12 08:18:04 327

原创 数据结构与算法2(线性表1)

compare()是数据元素判定函数,返回L中第1个与e满足compare)的数据元素的位序。若cur_e是L的数据元素,且不是最后一个,则用next_e返回它的后继, 否则操作失 败, next_e无意义。若cur_e是L的数据元素,且不是第一个,则用pre_e返回它 的前驱,否则操作失败,pre_e无意义。其中某个元素的前一个元素称为该元素的直接前驱,后一个元素称为该元素的直接后继。在L的第i个位置之前插入新的数据元素e, L的长度加一。删除L的第i个数据元素,并用e返回其值,L的长度减一。

2024-03-10 15:29:02 163

原创 数据结构与算法1(一些基本概念)

用一组连续的存储单元依次存储数据元素,数据元素之间的逻辑关系由元素的存储位置来表示。·用一组任意的存储单元存储数据元素,数据元素之间的逻辑关系用指针来表示。​集合结构,集合结构中的数据元素除了同属于一个集合外,没有其他关系。·是性质相同的数据元素的集合,是数据的一个子集。​物理结构,数据的逻辑结构在计算机中的存储形式。​逻辑结构,数据对象中数据元素间的相互关系。​·构成数据元素的不可分割的最小单位。​树形结构,数据元素存在一对多的关系。​图形结构,数据元素是多对多的关系。​线性结构,数据是一对一的关系。

2024-03-10 09:04:16 204

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除