自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【MySQL】上

数据库(DataBase DB): 存储数据的仓库,数据是有组织的进行存储数据库管理系统(DataBase Management Sysstem DBMS): 操纵和管理数据库的大型软件SQL(Structured Query Language): 操作关系型数据库的编程语言,定义了一套操作关系型数据库统一标准OracleMySQLSQL Server关系型数据库(RDBMS): 建立在关系模型基础上,由多张相互连接的二维表组成的数据库。使用表存储数据,格式统一,便于维护。

2026-09-29 16:47:34 200

原创 C++中STL

Person p1("张三", 18);Person p2("李四", 19);Person p3("王五", 20);it!= v.end();it++)// 存放自定义类型的指针Person p1("张三", 18);Person p2("李四", 19);Person p3("王五", 20);it!= v.end();test2();return 0;

2026-07-14 12:10:46 301

原创 C++模板

函数模板的作用:建立一个通用函数,其函数返回值类型和形参类型可以不具体制定,用一个虚拟的类型来代表。typename ----- 表明其后面的符号是一种数据结构,可以用class代替。作用:建立一个通用类,类中的成员 数据类型可以不具体制定,用一个虚拟的类型来代表。为了解决这个问题,提供模板的重载,可以为这些特定的类型提供具体化的模板。T ----- 通用的数据类型,名称可以替换,通常为大写字母。全局函数类外实现 --- 需要提前让编译器知道全局函数的存在。template ----- 声明创建模板。

2026-06-28 14:09:21 185

原创 C++类和对象

c++认为万事万物都为对象,对象上有其属性和性质。例如:人可以作为对象,属性有名称、年龄···,行为有走、跳、唱歌···。具有相同性质的对象,抽象的称为类。例如:人属于人类,车属于车类。

2026-06-21 21:49:21 227

原创 C++内存,引用与函数进阶

特点:1.共享,共享的目的是对一些频繁被执行的程序只需要在内存中有一份代码即可。注:①如果某个参数有默认值,那么从这个参数以后的每个参数都要有默认值。第一个值为10,因为编译器作了保留,第二次就不会保留了,值为乱码。在函数行参列表中,可以加const修饰形参,防止形参改变实参。如果在有默认值的情况下还传了数据,那么函数就会用我们传的数据。注:不要返回局部变量的地址,栈区开辟的数据由编译器自动释放。由编译器自动分配释放,存放函数的参数值,局部变量等。在c++中,函数形参列表中的形参是可以有默认值的。

2026-06-16 21:17:47 198

原创 数据结构(下)

对⼀棵树⽽⾔,除了根节点外,其余每个结点⼀定有且仅有⼀个双亲,双亲表⽰法就是根据这个特点存储树的,也就是把每个结点的双亲存下来。路径压缩:在查询时,把被查询的节点到根节点的路径上的所有节点的父节点设置为根节点,从而减小树的深度。也就是说,在向上查询的同时,把在路径上的每个节点都直接连接到根上,以后查询时就能直接查询到根节点。并查集(Union Find):是⼀种⽤于维护元素所属集合的数据结构,实现为⼀个森林,其中每棵树表示⼀个集合,树中的节点表示对应集合中的元素,根节点来代表整个集合。

2026-05-02 16:58:10 357

原创 数据结构(上)

单调队列,顾名思义,就是存储的元素要么单调递增要么单调递减的队列。• 当前元素进队之后,注意维护队列内的元素在⼤⼩为k的窗⼝内;• 当前元素进队之后,注意维护队列内的元素在⼤⼩为k的窗⼝内;•如果栈⾮空,插⼊当前位置元素时的栈顶元素就是所找的元素。• 寻找当前元素左侧,离它最近,并且⽐它⼤的元素在哪;• 寻找当前元素左侧,离它最近,并且⽐它⼩的元素在哪;• 寻找当前元素右侧,离它最近,并且⽐它⼤的元素在哪;• 寻找当前元素右侧,离它最近,并且⽐它⼩的元素在哪。

2026-04-28 20:39:02 165

原创 树的遍历

所谓宽度优先遍历,就是每次都尝试访问同一层的节点,如果这一层访问完了,就接着访问下一层。◆宽度优先遍历又称广度优先遍历和层序遍历,也是一种用于遍历或探索树或图的算法。所谓深度优先,就是每次都尝试向更深的节点走,也就是一条路走到黑。当一条路走完,走到不能再走,那就回去,再寻找其他的路。◆一种用于遍历或搜索树或图的算法。方法一:用vector来创建数组。方法二:用链式前向星存储。二:宽度优先遍历-BFS。方法一:用vector存树。一:深度优先遍历-DFS。

2026-04-22 08:40:56 19

原创 顺序表相关内容

empty:返回顺序表是否为空,因此是一个bool类型的返回值。vector底层就是一个自动扩容的顺序表,其中创建以及增删查改等逻辑已经实现,并且完成了封装。①顺序存储:顺序表是用顺序存储实现的线性表。1.2静态实现:直接创建一个足够大的数组来充当顺序表。●如果大于原始的大小,多出来的位置会补上默认,一般为0。①动态实现会进行空间的申请与释放以及数据的拷贝。5.1按值查找:查找顺序表中数值x的储存位置。5.2按位查找:返回顺序表中第几位的数值。底层实现的时候,会遍历整个元素,一个一个删除。

2026-04-22 08:40:41 29

原创 链表和list

②重新创建一个数组mp,标记每一个元素存储的下标。1.1.1动态实现:通过new动态的申请链表中的结点,通过delete来释放结点。先将新来的结点指向哨兵位下一个结点,再让哨兵位指向新来的结点。查找链表中是否存在元素X,如果存在,则返回该元素的下标。②另一个数组next存储下一个元素的下标,充当指针域。第二个数组prev存储前一个元素的存储下标。第三个数组next存储后一个元素的存储下标。①其中一个数组elem存储数据,充当数据域。②另一个变量id标记新来结点的存储位置。通过指针域,访问链表里所有的元素。

2026-04-21 20:21:43 43

原创 时间复杂度

第一个++count执行了N²次,第二个++count执行了2N次,第三个++count执行了10次。在计算时间复杂度的时候,一般会把T(N)中对结果影响不大的数忽略掉,这种表达式称为大O渐进时间复杂度。例:T(N)=N²+2N+10 O(T)=O(N²+2N+10) 最终为O(N²)(3)T(N)如果没有与N相关的项目,只有常数项,用常数1取代所以相加的常数。算法中的时间复杂度是一个函数式T(N),它定量描述了该算法的运行时间。(1)时间复杂度函数式T(N)中,只保留最高阶项,去掉哪些低阶项。

2026-04-21 20:21:23 15

原创 sort函数和数据结构

②链式存储:通过指针来存储前一个或下一个数据的地址,从而实现元素与元素之间的关系。comp是一个比较函数活一个函数对象。①顺序存储:把逻辑上相邻的元素存储在物理上也相邻的存储单元中。(3)数据的运算:将数据存放到计算机中,并对其进行一系列的操作。①集合:所有的数据放在同一集合中,但没有任何逻辑关系。(2)存储结构(物理结构):指数据在计算机中如何存放。(1)逻辑结构:数据中各个元素之间的逻辑关系。④图结构:数据之间存在多对多的关系。②线性结构:数据都是一对一的关系。③树形结构:数据是一对多的关系。

2026-01-31 23:24:12 178

原创 string相关知识

10表明被解析字符串中的数字是10进制的,不写则默认为10进制。若数字改为8,则说明原数字为8进制,最终放回值是10进制的数值。若数字改为0,则会根据字符串判断,0x为16进制,0为8进制。①begin():返回指向字符串第一个字符的迭代器,需要一个迭代器的变量(string::iterator)来接收。0表示从下标为0开始查找,3表明在字符串中查找"word"中前三个字符第一次出现的下标,输出结果为6。②substr(pos):表明将从下标为pos的位置到字符串的最后的子串截取下来。

2026-01-28 21:15:29 321

原创 冒泡排列相关知识

如图是一个简单的将降序改为升序的代码。在冒泡排列的函数中,我通过两两对比将大数往后面挪动,每一轮结束后,最后一个数在下一轮就不参与对比,所以最里面的循环次数就会减少。回调函数是一个通过指针调用的函数。将一个函数(A)的指针传给另一个函数(B),并在这个函数(B)中调用函数(A),就称这是回调函数。冒泡排列就是重复遍历待排序数组,相邻两个数之间进行比较。该代码原理主要参考于qsort,适用于所有类型数据之间的排列。这个代码只能用于整数之间的升降序排列。qsort是通过使用快速排列来完成的。

2025-12-28 21:39:05 173 1

原创 指针和指针类型

指针存放的是1字节,而1字节等于8位,所以在32位机器中指针变量的大小是4字节(32/8=4),在64位机器中大小是8字节(64/8=8)。指针变量的大小是固定的,但指针访问内存空间的大小由指针类型决定。由于a是局部变量,所以在出test函数后,内存给a的内存就会收回,p存放的地址就不能找到a的内存单元。指针用来存放内存单元(每个单元一个字节)的地址,我们可以通过指针来找到这个值的内存单元。(2)指针的类型决定了指针在 ±整数 操作时跳过的字节。(1)指针类型决定了指针在被解引用的时候访问了几个字节。

2025-12-23 22:58:13 252

空空如也

空空如也

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

TA关注的人

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