自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++入门———命名空间及输入输出

C++的命名空间及输入输出

2024-11-25 20:02:43 1056

原创 c++------模板进阶

一个程序(项目)由若干源文件共同实现,而每一个源文件单独编译生成目标文件,最后将所有目标文件链接起来形成单一的可执行文件的过程称为分离编译模式模板的分离编译c/c++程序运行时的过程1、增强复用了代码,节省资源,更快的迭代开发,C++的标准库因此产生2、增强了代码的灵活性。

2025-04-14 20:41:17 760

原创 Linux——基础开发工具

在Liunx下安装软件,一个通常的方法就是下载程序的源代码,得到可执行程序。但是这样带过于麻烦,于是有些人把一些常见的软件提前编译好,做成软件包,放在一个服务器上,通过包管理器可以很方便的获取到这个编译好的软件包,直接进行安装软件包和软件包管理器,就好比App和应用商店这样的关系yum是Linux下非常常用的一种包管理器,主要应用在Fedora,RedHat,Centos等发行办上Ubuntu主要使用apt作为其包管理器。底行其他命令。

2025-04-14 16:57:54 710

原创 专题三——二分查找

二分查找 在排序数组中查找元素的第一个和最后一个位置x的算法平方根 搜索插入位置 寻找峰值 上峰数组的索引寻找旋转排序数组中最小的组寻找0~n-1 中缺少的值

2025-04-11 15:48:59 786

原创 Linux __命令和权限

是什么:由上图可知操作系统是一款进行软硬资源管理的软件为什么:对下做好软硬件的管理工作(手段)操作系统要给用户提供一个良好的运行环境(目的)什么是良好:稳定 高效 安全目录的可执行权限是表示你可否在目录下执行命令如果目录没有-x权限,则无法对目录执行任何命令,甚至无法cd进入目录,即使这个目录仍然有-r读权限(这个地方容易犯错)而如果目录有-x权限,但没有-r权限,则用户可以执行命令,可以cd进入目录。但由于没有目录的读的权限 即可以执行ls命令,但是没有权限读出目录下的文档。

2025-04-11 15:40:49 1328

原创 c++--------- stack queue

kw=stackkw=stack我们可以观察到stack queue和vector、string、list都不同的是的模板中有一个适配器适配器是一种设计(设计模式是一套被反复使用堆的、多数人知晓的、经过分类编目、代码设计经验的总结),该模式是将一个类的接口转化成客户希望的另一个接口vector优点:下标的随机访问缺点:中间或者头部插入删除效率低/扩容有一定的消耗,可能存在一定的空间的浪费list优点:高效的在任意位置插入删除缺点:不支持小标随机访问/按需申请释放空间。

2025-04-08 17:12:57 825

原创 C++__list

带你从模拟实现list的角度理解list

2025-04-02 15:09:48 943

原创 Linux--命令行操作

1.简单的文件操作2.编程3.支持系统和网络。

2025-03-27 21:18:09 945

原创 C++———— Vector

演示: 主要作用:获取第一个数据位置的迭代器和最后一个数据的下一个位置的迭代器。演示:主要作用:rbegin获取最后一个数据位置的迭代器,rend获取第一个数据的前一个位置的迭代器。演示:演示: 注解:capacity的代码在g++和vs下分别运行下会发现,vs下的capacity是按1.5倍增长的,g++是按2倍增长的,由此可以到底每一次增长多少是不确定的,需要看编译器。reserve是负责开辟空间的,如果提前知道需要多少空间可以使用reserve统一开辟,减少vector增容的代价问题resize在开空

2025-03-27 20:57:22 1092

原创 专题一————双指针

本文精选了八道双指针的题目,帮助大家提升对双指针用法的认识

2025-03-24 16:51:51 638

原创 string类

详细介绍string类,并模拟实现主要功能

2025-02-26 17:41:21 1075

原创 C++——模板初阶(函数模板,类模板)

ps:不建议模板定义和声明分离,会出现链接错误。

2025-02-07 12:23:55 621

原创 c++内存管理——malloc calloc realloc free new delete operator new operator delete

new delete 和 malloc free 最大的区别是new除了开空间还会调用构造函数,delete除了释放空间还会调用析构函数。(对内置类型基本一样)1.调用operator new函数申请空间。2. 在申请的空间上执行构造函数,完成对象的构造。

2025-02-06 12:30:17 1005

原创 类和对象(下)——类型转化 static成员 内部类 匿名对象 拷贝对象优化

类型转化 static成员 内部类 匿名对象 拷贝对象优化

2025-02-03 11:53:32 920

原创 C++——缺省参数、函数重载、引用、inline

用inline修饰的函数叫做内联函数,编译时C++编译器会在调用的地方展开内联函数,这样调用内联函数就不需要建立栈帧从而提升效率。

2025-02-01 11:54:12 659

原创 类和对象(中)---默认函数

构造函数的功能是实例化对象时初始化,并不是创建对象。类似于我们用c语言来写栈和堆时的Init赋值运算符是一个默认成员函数,用于完成两个已经存在的对象直接的拷贝赋值(与拷贝构造最大的不同,拷贝构造是对一个对象拷贝初始化给另一个要创建的对象。

2025-02-01 11:49:27 984

原创 C++入门——类和对象(上)

类的定义和格式,访问限定符 ,类域,实例化

2025-01-20 22:36:22 805

原创 排序详解(史上最全)

插入排序,选择排序,交换排序,归并排序,计数排序

2024-11-24 20:05:22 996

原创 详解二叉树(2)--二叉树的链式结构(递归的暴力美学)

二叉树的链式结构实现,二叉树的遍历,二叉树的结点个数及高度

2024-11-13 20:21:58 154

原创 详解二叉树(上)---堆

树的概念,二叉树的概念和性质结构,堆的概念和实现

2024-11-13 20:18:24 1029

原创 队列和栈题目代刷

有效括号,队列实现栈,栈实现队列

2024-11-07 18:56:59 993

原创 单链表题代刷--环形链表及随即表的复制

环形链表篇,随机链表的复制

2024-10-30 20:49:39 306

原创 操作符详解

:加;-:减;*: 乘;/:除;如果双方操作符两端是整数那么结果会自动强制转化为整数;%:取余;

2024-10-30 18:22:37 416

原创 单链表题带刷(二)

判断链表是否为回文结构,判断是否为相交链表

2024-10-30 17:36:16 402

原创 单链表题带刷

三指针,快慢指针,哨兵位解链表问题

2024-10-26 22:47:31 631

原创 算法带刷——顺序表的应用(双指针)

巧用双指针

2024-10-26 15:41:49 419

原创 算法带刷——轮转数组

每一次轮转时都将最后一个保存,然后将前一个的数值移到后面一个,直到数组的第一个为空时,我们将最先存储的数据放到第一个中,这样完成了一次轮转,最后用循环来控制次数。我们发现轮转k次就是把倒数第k个后面的(即把后k个)的数据放在前面,再将前size-k个数据放在后面的位置,我们可以定义一个新数组来完成以上操作。倒数第k个后面的(即把后k个)的数据放在前面,再将前size-k个数据放在后面的位置,可以合并成一个操作。这个方法将时间复杂度降到o(n),空间复杂度为o(1)

2024-10-21 17:13:48 390

原创 详解队列(带你五分钟了解队列)

概念:只允许在一段进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出的性质。入队列:进行插入操作的一端称为队尾出队列:进行删除操作的一段称为队头。

2024-10-21 14:53:27 620

原创 详解栈(五分钟快速了解栈)

栈是一种特殊的的线性表,其只允许一段插入和删除元素的操作。进行数据插入和删除的一端叫栈顶,另一端叫做栈底。栈遵循先进后出的原则。压栈:栈的插入操作叫做进栈、压栈、入栈。入数据的地方在栈顶。出栈:栈的删除操作叫做出栈。删除数据的地方在栈顶。栈的底层结构:一般是数组(其实数组和链表都可以实现栈,但链表在尾插入时时间复杂度为o(n),用数组来实现更有优势,代价更小)

2024-10-20 15:42:11 434

原创 详解双向链表

这里的头插是指插在哨兵位后,如果插在哨兵位前面相当于尾插。详情请看我的上一篇文章。除头结点外没有其他结点。

2024-10-19 15:31:24 565

原创 详解单链表

(1)链式机构在逻辑上是连续的,在物理结构上不一定连续(2)结点一般都是从堆上申请(3)从堆上申请来的空间,是按照一定策略分配出来的,每次申请的代码可能连续,可能不连续。

2024-10-18 12:33:55 210

原创 详解顺序表

五分钟快速了解顺序表

2024-10-14 14:31:59 293

原创 算法复杂度

m因为在不同的环境、编译器等情况下每次算法运行的时间都会有所不同。我们没有办法算出实际使用时间所以我们假设每一条指令的时间是相同的,执行时间就和执行指令次数和指令执行时间成正比,我们就可以用执行次数来表示程序执行的快慢。即用T(N)函数来表示。计算算法在运行中因为算法的额外临时开辟的空间,因为常规情况下每个对象大小差异不会很大,所以我们用变量的多少来计算空间复杂度。(因为函数运行所需要的栈空间(存储参数,局部变量等在编译时已经确定好了,因此空间复杂度主要通过函数在运行时显示申请的额外空间来确定))

2024-10-13 15:02:07 418

原创 指针之我见(史上最全)

指针也是一个变量,也有地址,我们把指针的地址存储起来就叫二级指针.我们把数组的地址传给指针,指针里存放着数组的地址就叫数组指针。形如int (*p)[10], 该指针的类型是int(*)[10],*p表示p是一个指针,int [10]表示数组指针所指向的是一个大小为10个整形的数组我们将函数的地址传给指针,指针里存放着函数的地址就叫函数指针。形如:int(*pa)(int x, int y)

2024-08-12 15:47:52 540

原创 C语言初级扫雷小游戏详解

因为我们的扫雷小游戏的代码有些长,为了不显得太繁杂,我们分为test.c game.c game.h三个文件test.c写主程序。game.c写游戏的程序。game.h写头文件。

2024-07-31 17:55:08 1010

原创 函数之我见

在写程序的过程中可能有一些功能需要实现但并没用与之对应的库函数就需要我们自定义函数,其实库函数就是我们经常能用到的一些函数,官方进行了统一不需要我们自己写大大提升了效率。

2024-07-25 23:22:44 666

原创 数组之我见

数组是一个相同类型数据的集合:1.数组存放一个或多个数据,但不为0。2.存放数据的类型是相同的。数组分为一维数组、二维数组和多维数组。

2024-07-21 22:08:45 358

原创 循环之我见

while(表达式)语句;

2024-07-20 22:18:22 253

空空如也

空空如也

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

TA关注的人

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