自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 C++多态

多态是一个继承关系下的类对象,去调用同一个函数,产生不同的行为。比如:student继承了person,person对象全价买票,student对象优惠买票

2024-11-03 13:31:53 910

原创 C++继承

继承机制是面向对象程序设计使代码复用的重要手段,它允许我们在保持原有类特性的基础上进行扩展,增加成员函数和成员变量,产生新的类,称为派生类(子类)。

2024-10-21 18:23:17 778

原创 模板的特化

必须要先有一个基础的函数模板。关键字 template后面接一对空白的尖括号。函数名后跟一对,中指定需要特化的类型。函数形参表:必须要和模板函数的基础参数类型完全相同,如果不同 编译器可能会报一些奇怪的错误

2024-09-28 17:00:29 485

原创 STL——string类的使用

auto 作为一个新的类型指示符来指示编译器,auto声明的变量必须由编译器在编译时期推导而得 用auto声明指针类型时,用auto和auto*没有任何区别,但用auto声明引用类型时则必须加&

2024-09-09 21:41:53 727

原创 C/C++ 内存管理

申请和释放单个元素的空间,使用new和delete操作符,申请和释放连续的空间,使用new[ ] 和delete[ ]。要匹配使用

2024-08-07 22:38:15 757

原创 C++初识模板

泛型编程:编写与类型无关的通用代码,是代码复用的一种手段。模板是泛型编程的基础

2024-08-07 22:34:23 627

原创 类的默认成员函数(下)

若未显式定义拷贝构造,编译器会自动生成拷贝构造函数。自动生成的拷贝构造对内置类型成员变量会完成值拷贝/浅拷贝(一个字节一个字节的拷贝),对自定义类型成员变量会调用它的拷贝构造

2024-07-22 18:07:06 774

原创 类的默认成员函数(上)

构造函数主要任务不是开空间创建对象(我们常使用的局部对象是栈帧创建时,空间就开了),而是对象实例化时初始化对象

2024-07-22 18:03:32 986

原创 理解类与对象:面向对象基础

C++中struct也可以定义类,C++兼容C中struct的用法,同时struct升级成了类,明显的变化是struct中可以定义函数,但是一般情况下我们还是推荐用class定义类

2024-07-18 12:44:32 703

原创 C++入门基础

namespace本质是定义出一个域,这个域跟全局域各自独立,不同的域可以定义同名变量

2024-07-18 10:35:23 1134

原创 归并排序和计数排序

归并排序是建立在归并操作上的一种有效的排序算法。该算法是采用分治法(Divide and Conquer)的一个非常典型的应用。将已有序的子序列合并,得到完全有序的序列;即先使每个子序列有序,再使子序列段间有序。若将两个有序表合并成一个有序表,称为2-路归并。

2024-06-25 14:44:42 545 2

原创 选择排序和冒泡排序

每一次从待排序的数据元素中选出最小(或最大)的一个元素,存放在序列的起始位置,直到全部待排序的数据排完

2024-06-24 17:18:25 361

原创 快速排序的实现(3种)

过一趟排序将待排记录分隔成独立的两部分,其中一部分记录的关键字均比另一部分的关键字小,则可分别对这两部分记录继续进行排序,以达到整个序列有序。

2024-06-24 17:17:34 1053

原创 插入排序和希尔排序

直接插入排序 基本思想: 把待排序的数据按其大小逐个插入到一个已经排好序的有序序列中,直到所有的数据插入完成为止

2024-05-31 19:13:12 489

原创 二叉树的链式存储

规定根节点的层数为1,则一棵非空二叉树的第k层上最多有`2^(k-1)`个节点规定根节点的层数为1,则深度为h的二叉树的最大节点个数为`2^h-1`对于任意一棵二叉树,`n0(度为0的节点个数)=n2(度为2的节点个数)+1`

2024-05-31 16:09:28 623

原创 堆和堆排序

二叉树顺序存储在物理上是一个数组,在逻辑上是一颗二叉树。

2024-05-25 17:53:40 578

原创 栈和队列的相互实现(C)

栈和队列相互实现leetcode上面的OJ题

2024-05-12 15:41:10 403

原创 带环链表的相关问题

两指针都从链表起始位置开始走,快指针一次走两步,慢指针一次走一步,如果链表带环一定会在环中相遇

2024-05-03 14:09:56 449 1

原创 数据结构之单链表

链表是一种**物理存储结构上非连续**的存储结构,数据元素的逻辑顺序是通过链表中的指针链接实现的

2024-04-15 17:04:10 1986

原创 顺序表(动态)

顺序表在逻辑结构和物理结构(存储结构)上都是连续的

2024-04-09 17:24:33 700

原创 C语言-文件

磁盘上的文件就是文件程序文件数据文件。

2024-03-30 19:57:41 644 1

原创 C语言-编译和链接

一个C语言项目中可能有多个.c文件一起构建多个.c文件单独经过编译器,编译处理生成对应的目标文件多个目标文件和链接库一起经过链接器处理生成最终的可执行程序100在用#define定义标识符的时候,不用在最后加上;如果加上,很容易导致一些问题100;if(1)a=MAX;//这里其实是 a=100;;这里有两个分号,编译器会通不过,因为if只能管一条语句,两个分号就是两条语句elsea=-1;#define。

2024-03-30 18:58:32 801 1

原创 C语言结构体

位段的声明和结构是类似的,有两个不同:1.位段的成员必须是,在c99中位段成员的类型也可以选择其他类型2.位段的成员名后面有一个冒号和一个数字struct Aint _a:2;int _b:5;int _c:10;int _d:30;A是一个位段类型。

2024-03-21 20:54:46 992 1

原创 C语言中整型和浮点型在内存中的存储方式

大端(存储)模式:是指数据的低位字节内容保存在内存的高地址处,而数据的高位字节内容,保存在内存的低地址处小端(存储)模式:是指数据的低位字节内容保存在内存的低地址处,而数据的高位字节内容,保存在内容的高地址处。

2024-03-19 16:20:38 1912 1

原创 C语言---内存函数

是用来设置内存的,将内存中的值以字节为单位设置成想要的内容。指针指向的位置开始,向后的。

2024-03-15 18:50:26 360 1

原创 C语言---库函数(字符串函数)模拟实现

只比较到两个字符串的前。

2024-03-15 18:16:48 449 1

原创 C语言---指针(下)

上述代码只是模拟出了二维数组的效果,实际上并非完全是二维数组,因为每一行并非连续的。指针数组其实就是一个数组,只是数组中存放的元素是指针(地址)是一个指针变量,然后指向的是一个大小未10个整型的数组。存放的是数组的地址,能够指向数组的指针变量。

2024-03-08 19:52:08 373 1

原创 C语言---指针(上)

因为数组在内存中是连续存放的,只要知道了第一个元素的地址,就能找到后面所有的元素。我们只要拿到了地址(指针),就可以通过地址(指针)找到地址(指针)指向的对象。是C语言中定义的一个标识符常量,值是0,0也是地址,这个地址是无法使用的。指针的类型决定了,对指针解引用的时候有多大的权限(一次能操作几个字节)指针也是变量,是变量就有地址,指针变量的地址存放在二级指针中。类型的指针不能直接进行指针的+ - 整数和解引用的运算。取出的是a所占4个字节中地址较小的字节的地址。中存放的地址,找到指向的空间,

2024-03-08 19:13:26 919 1

原创 C语言---函数

自定义函数比库函数更加重要,也能给程序员写代码更多的创造性如果我们把函数的定义写在了main函数后面,则我们需要在main函数前面对该函数进行声明。//函数的声明int main()int a=0;int b=0;return 0;return a+b;

2024-03-02 18:58:11 903

原创 C语言---操作符

有符号整数的三种表示方法均有符号位和数值位两部分,二进制序列中,最高位的1位是被当做符号位,剩余的都是数值位。八进制的数字每一位是0~7的数字,各自写成二进制,最多有3个二进制就足够了,比如7的二进制是111。十六进制的数字由0~9 ,a ~ f 组成最多有4个二进制就足够了,比如f 是1111。比如:二进制01101011,换成八进制:0153,0开头的数字,会被当成八进制。接受一个或者多个操作数:第一个操作数是函数名,剩余的操作数就是传递给函数的参数。二进制的数字每一位都是0~1的数字组成。

2024-02-24 16:35:38 1009

原创 C语言实现扫雷游戏

假设我们排查(8,6)这个坐标,我们访问周围一圈8个黄色位置,统计周围雷的个数时,最下面的三个坐标就会越界,为了防止越界,我们在设计的时候,给数组扩大一圈,雷还是布置在9*9的坐标上,周围一圈不去布置雷就行,这样我们就解决了越界问题。再继续分析,我们在棋盘上布置了雷,棋盘上的雷的信息(1)和非雷的信息(0),假设我们排查了某个位置后,这个坐标处不是雷,这个坐标周围有一个雷,我们就需要将排查出雷的信息进行记录,并打印出来,作为排雷的虫咬参考信息。9的棋盘上布置雷的信息和排查雷,所有首先想到的就是创建一个9。

2024-02-19 10:42:13 412 1

原创 C语言---数组

在C99标准之前,C语言在创建数组的时候,数组大小的指定只能使用常量,常量表达式,或者如果我们初始化数据,可以省略数组的大小。C语言规定数组是有下标的,下标是从0开始的,假设数组有n 个元素,最后一个元素的下标是n-1 ,下标相当于数组元素的编号。从输出的结果来看,每一行内部的每一个元素是相邻的,地址之间相差4个字节,跨行位置处的两个元素之间也是相差4个字节,所有。我们又知道数组中所有元素的类型都是相同的,那只要计算出一个元素所占字节的个数,数组的元素个数就能算出来。,数组在创建的时候可以指定。

2024-02-13 13:15:51 1050 1

原创 C语言---数据类型和变量(超详细)

1 charprintf返回的是打印在屏幕上的字符的个数。

2024-01-30 19:36:41 2203 1

原创 C语言---循环结构

C语言中使用可以实现循环。

2024-01-25 13:11:10 566

原创 C语言---分支结构

在C语言中,0为假,非0为真

2024-01-24 21:32:35 984

原创 C语言的基本概念

C语言源文件(.c)—>编译—>.obj—>链接—>.exe

2024-01-21 22:47:11 819

原创 个人第一个博客

3.对于编程学习我的方法是:每天要坚持写代码,即使很忙每天都要坚持一小时,对于学过的编程知识每周一回顾,避免变得生疏,除此之外就是多多刷题。4.对于每周在编程上花费的时间:如果时间很充裕,就20小时左右;1.本人是一名大一的计算机专业的学生,从今天开始我将每周坚持写我的博客。2.我目前的编程目标是在大二之前熟练的掌握C语言。5.我目前最想进的一家IT公司:字节跳动。

2024-01-16 19:35:02 379 1

空空如也

空空如也

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

TA关注的人

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