自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(25)
  • 问答 (1)
  • 收藏
  • 关注

原创 数据结构排序必会算法代码集合

每次将堆顶元素与堆尾元素交换,然后将堆的大小减 1,并对新的堆顶元素进行堆调整,使其继续满足堆的性质。选取一个基准元素(pivot),通过一趟排序将待排序数组分割成独立的两部分,其中一部分的所有元素都比基准元素小,另一部分的所有元素都比基准元素大。初始时,已排序区只有一个元素(数组的第一个元素),然后从未排序区逐个取出元素,插入到已排序区中的正确位置,保持已排序区始终有序。,将数组按增量分组,对每组使用插入排序。冒泡排序重复地遍历要排序的列表,每次比较相邻的两个元素,如果它们的顺序错误就交换它们的位置。

2025-02-19 12:05:18 355

原创 (看了必理解原理)HashMap/TreeMap/HashSet/TreeSet

Map(地图)和 Set(集合)。我会尽量用大家生活中常见的事物来做比喻,保证你一看就明白,而且能记住它们是怎么工作的,这样就不会轻易忘记啦!

2025-02-09 17:56:06 954

原创 数据结构基

计数排序⼜称为鸽巢原理,是对哈希直接定址法的变形应⽤。操作步骤:1)统计相同元素出现次数2)根据统计的结果将序列回收到原来的序列中为了避免浪费空间,把数组中最大值与最小值相减然后+1。

2024-11-05 21:34:42 592 1

原创 数据结构:链表二叉树

二叉树是一种数据结构,其中每个节点最多有两个子节点,分别称为左子节点和右子节点。二叉树的根节点是整个树的入口,通常我们可以通过递归的方式来访问树中的所有节点。二叉树在计算机科学中应用非常广泛,例如在表达式解析、搜索算法、排序等方面。在这篇文章中,我们将学习如何在C语言中实现一个简单的二叉树,并讲解其各个功能模块,包括如何创建节点、遍历树、计算节点数量、查找节点等。通过这篇博客,大家会掌握如何设计和实现二叉树,避免常见的错误,并理解这些操作背后的原理。这篇博客带领大家一步步实现了二叉树的基本操作。

2024-10-17 18:43:54 1315 5

原创 数据结构:栈

栈是一种后进先出(LIFO, Last In First Out)的数据结构,意思是:最新进入的数据会最先被取出。可以把它想象成一摞书,你总是只能从最上面拿书,放书也只能放在最上面。我们要编写一个简单的栈程序,包含栈的初始化、入栈、出栈、查看栈顶元素以及销毁栈。通过这些操作,你将掌握栈的基本用法。// 定义栈的数据类型// 定义栈的结构// 用于存放栈中元素的数组// 栈的总容量int top;// 栈顶索引} ST;解释STDataType:我们用int类型来存储栈中的数据。arr。

2024-10-16 18:29:10 1382 22

原创 数据结构:双向链表

双向链表是链表的一种扩展形式,允许我们双向遍历数据。在C语言中,链表通过指针来实现,操作灵活,但需要小心指针操作和内存管理。通过本文介绍的代码和细节,大家可以掌握双向链表的基本实现方式,同时避免常见的错误。

2024-10-16 18:17:41 1899 38

原创 单链表的增删改查(数据结构)

概念:链表是⼀种物理存储结构上⾮连续、⾮顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。

2024-09-29 15:26:10 1709 39

原创 动态顺序表的增删改查(数据结构)

顺序表是数据结构的基础知识,通过学习次内容,可以让我们了解顺序表中数据中是如何进行存储,删除,插入数据的。

2024-09-28 20:31:26 1413 30

原创 数据结构——复杂度讲解

算法效率就是我们所写的代码运行的速度快慢,比如:有两个人一起学习,学习的时间地点都是一样的,第一个人学的很快,第二个人学的很慢,很明显,第一个人学习效率高,第二个人学习效率低,这就是因为学习方法不一样导致的,虽然这两个人都可以学会相同的知识。我们所写的代码也是如此,两个人写同一道算法题目时候,一个人写的代码运行效率快,一个人写的代码运行效率慢,但是最终实现的结构都是相同的。如何衡量⼀个算法的好坏呢?

2024-09-13 18:31:20 1666 45

原创 C语言文件操作

1. 为什么使⽤⽂件?我们所写的数据是保存在内存中的,并不是直接在磁盘保存,通过文件可以保存我们在内存中所需要的内容,没用文件的话,我们就无法保存文件。也就是说我们要将数永久保存,就可以使用文件。

2024-08-21 18:34:19 1492 41

原创 自定义类型:结构体

位端可以限制结构体中创建变量占用内存的大小使用位段时,成名必须是unsigend int,int,sigent int,在c99中其他成员可以使用位段位段的创建在成员名后面加上一个冒号跟一个数字。int _b : 2;int _c : 1;

2024-08-16 09:00:00 1807 30

原创 数据在内存中的存储

什么是大端模式:数据的低位字节内容保存在内存的高地址处,数据的高字节内容保存在低地址处什么是小端模式:数据的低为字节内容保存在内存的低地址处,数据的高字节内存保存在高地址处。

2024-08-15 12:20:01 1378 26

原创 字符函数和字符串函数(2),C语言内存函数

这个函数的用法跟strcpy的用法差不多是一样的strncp原函数:char* strncpy(char* dest, const char* src, size_t num);这个函数可以选择复制src多少个字节的内容,如果想复制3个字节,那么dest就会得到3个字节,而不会把整个字符串全部给拷贝过来当拷贝的时候,遇见“\0”停止需要获取dest的首地址才可以打印dest需要有足够的空间来接收src复制过来的内容。

2024-08-10 18:51:12 1496 18

原创 字符函数和字符串函数(1)

字符分类函数指一个字符是属于一个什么类型的字符。字符分类函数使用时需要头文件函数符合条件返回“真”iscntrl任何控制符号isspace空白字符” ”空格,”\f”换页,”\n”换行,”\r”空格,”\t”制表符,”\v”垂直制表符isdigit0-9数字isxdigit十六进制数,a-f,A-Fislower所有小写字母isupper所有大写字母isalpha字母a-z,A-Zisalnum字母数字,a-z,A-Z,0-9ispunct标点符号。

2024-08-09 22:49:10 865 18

原创 C语言指针(3)

void test(int* arr[5], int r, int s),每一行数组中元素的个数为5,使用int (*p)[5]是为了与二维数组‘arr’的每一行的结构匹配。这一个3行5列的数组,arr[0]对应的是第一行首元素的地址,arr[1]对应的是第二行首元素的地址。在调试这段代码的时候,我们看见p已经接收了整个数组,数组的类型已经改变成int[5]*所以二维数组的本质也是传递了地址,传递的地址是一个每一行的数组地址。指针获取的是指向类型变量的地址,指针需要获得整个数组的地址。

2024-08-05 12:57:46 625 4

原创 C语言指针(2)

一、数组名的理解1、&arr[0]与arr有时候我们需要获取数组首元素,有两种方法可以获取。使用这两种方法都可以获得数组首元素&arr[0],arr。

2024-08-04 22:43:44 913 5

原创 C语言指针(1)

hello大家好,今天我们来讲一下C语言中指针的知识点,指针这部分内容很多,容易记混而且有时候写代码也想不到,这就需要有一个良好的指针基础,我尽全力把指针用我们已经学习过的知识来讲述,让学习者都可以很快的理解,并且可以使用我所讲指针给出的例子来练习。那么我们就开始学习吧!!!

2024-08-03 23:10:23 1618 26

原创 C语言函数递归

递归就是自己调用自己int main()printf("哈哈\n");main();return 0;输出:在这个代码中,在执行完printf这一条语句以后就下一条就调用了main函数,所以我们运行的结果是无限循环,知道空间不够才能停下来。

2024-07-27 14:55:01 1018 14

原创 C语言扫雷游戏

今天我们讲解扫雷游戏的制作,这是一个简易的扫雷游戏。扫雷游戏怎么玩:格子上的数字代表其周围八个格子中含有的雷的个数。数字1代表我们点击格子以后显示周围八个格子中含有雷的个数。我们知道玩法以后,那么我们就开始自己制作一款扫雷游戏吧。首先如果把代码放入到一个.c文件中的话,不方便阅读,同时逻辑思维能力也会低,我们创建三个文件,test.c、game.c、game.h文件。test.c文件,包含main函数,负责程序的入口和游戏的整体控制。game.c。

2024-07-22 13:16:47 799 11

原创 C语言的函数讲解

一、函数是什么C语⾔中的函数就是⼀个完成某项特定的任务的⼀⼩段代码。在整个应用程序中,是由许许多多个函数来构成的。而且函数可以重复使用,大大提高了开发效率在C语言中,函数是执行特定任务的基本单位,是C程序的基本构建块。

2024-07-20 22:02:34 1274 8

原创 一维数组与二维数组

type arr_name[ 常量值 ];如:char arr[10];等等形式。type,数组的类型可以使用char、int、short、float等等,也可以自定义类型arr_name,可以使用任何的名字命名,有实际应用的名字都可以

2024-07-19 16:09:56 1059 9

原创 C语言猜数字游戏(必做题目)

1. 电脑⾃动⽣成1~100的随机数。2. 玩家猜数字,猜数字的过程中,根据猜测数据的⼤⼩给出⼤了或⼩了的反馈,直到猜对,游戏结束。

2024-07-17 17:27:46 235 5

原创 C语言中for、while、do while、break、continue、goto的使用方法

今天介绍一下循环函数for、while、do while然后再看一看break、continue、goto语句循环结构是必须要学习好的,几乎所有代码都会应用到循环结构。

2024-07-17 13:26:09 1281 12

原创 C语言中if、else、switch的使用方法

C语言程序的构建基石是三大基本结构:顺序结构、选择结构(分支)与循环结构。理解这些结构及其组合应用,有助于深入学习并减轻初学者对C语言的畏难情绪。我们可以使用以下5个函数来构成结构体:if、switch(实现分支)、while、do while、for(实现循环)。

2024-07-16 18:08:20 2985 7

原创 简单描述一下我的职业规划

本人霸王龙,双非二本大三学生。

2024-05-25 16:50:17 284 1

空空如也

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

TA关注的人

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