自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 链式二叉树

主要介绍了二叉树的前序,中序,后序以及层序遍历。还介绍了一些关于二叉树部分的基础oj题,如单值二叉树,是否是同一棵树,是否是对称二叉树,二叉树的构建,是否是完全二叉树等

2024-06-21 14:45:14 946

原创 二叉树和堆

本文主要介绍了树的一些概念,如树的度,父节点,子节点,兄弟节点等,还介绍了完全二叉树和满二叉树,以及二叉树的一些性质和结论,满二叉树是一种特殊的完全二叉树。还介绍了堆这种数据结构,堆通常使用数组来进行存储的,其中堆最重要的就是利用可使用堆来进行堆排序。通过堆引出了topk问题。对于topk问题可通过建立小堆可以选出最大的k个数,建立大堆可选出最小的k个数。

2024-06-05 21:23:07 570

原创 实现栈和队列

本文主要介绍了栈和队列这两种数据结构性质和特点,栈是后进先出,队列是先进先出。通过使用C语言实现了这两种数据结构,栈的底层是用数组,队列底层使用的是链表,最后还介绍了一些经典的栈和队列的题的思路以及代码的实现。

2024-05-20 21:13:25 1010 1

原创 环形链表的经典问题

环形链表是一种链表数据结构,环形链表是某个节点的next指针指向前面的节点或指向自己这个节点的一个链表,这个链表就构成了环形链表。

2024-05-01 16:18:52 853 1

原创 在控制台实现贪吃蛇

本文主要介绍了贪吃蛇小游戏的简单实现,其核心是使用链表来对贪吃蛇小游戏的参数进行维护处理的

2024-04-23 21:39:07 1095

原创 编译和链接

本文简单地介绍了C语言的编译和链接。翻译环境包括预处理,编译,汇编以及链接以及运行环境的简单介绍

2024-04-01 16:56:33 527 1

原创 C语言中常用的文件操作

常用的关于文件操作函数,如fopen,fclose,fread,fwrite,feek,ftell,rewind以及feof和ferror等文件操作操作函数,还介绍一些用于所有输入输出流的函数如fgetc,fputc,fgets,fputs,fprintf,fscanf等函数,还介绍了sscanf,sprintf函数,feof和ferror函数。最后还介绍了文件文件缓冲区的存在

2024-03-27 18:02:29 1530

原创 结构体介绍

主要对结构体进行了介绍,如结构体的声明和定义,访问赋值等,以及结构体在内存中存在内存对齐的,最后还介绍了结构体实现位段

2024-03-21 12:53:24 1129 1

原创 整数和浮点数在内存中的存储

主要介绍了整数和浮点数在内存中的存储方式

2024-03-16 22:01:36 716 1

原创 字符串函数和内存函数

简介:本文将介绍常使用的字符串函数和内存函数,以及对其进行模拟实现,以便能够更好的理解这些函数的使用。常用的字符串函数有strcpy,strcat,strcmp,strncpy,strncat,strncmp,strstr等,常见的内存函数有memcpy,memmove,memset,memcmp等

2024-03-15 19:26:13 1185 1

原创 单链表的实现

单链表是一种常用的数据结构,用于存储元素的线性集合,其中每个元素都是一个节点,每个节点指向下一个节点,形成一个链。在单链表中,每个节点通常包含两个部分:一个是存储的数据(或称为值),另一个是指向下一个节点的指针(或链接)。单链表的最后一个节点的指针指向NULL,表示链表的结束。

2024-03-10 22:37:26 965 1

原创 指针的理解及示例

指针的介绍以及使用sizeof和strlen测试了一些一维数组和二维数组,以便更好的理解数组,指针之间的关系

2024-03-06 14:24:06 1008 1

原创 通讯录(文件保存、读取版本)

主要介绍了fopen,fread和fwrite参数以及功能,并在这个基础上完成了对通讯录的改造(以实现信息的存储功能)

2024-02-22 16:25:51 812 1

原创 使用结构体实现通讯录(静态版本+动态版本)

实现一个通讯录,用来保存其名字,年龄,性别,电话,住址1、增加联系人2、删除指定联系人3、修改指定联系人4、查找指定联系人5、显示当先所存所有联系人的信息6、对当前联系人按照某个标准进行排序考虑到通讯录要存储联系人的姓名,年龄,性别,电话,所以考虑使用结构体来存储通讯录的数据信息。对于这个实现我们采用多文件的形式来完成,test.c用来实现整个通讯录的测试逻辑,contact.h实现对函数,标识符,结构体等声明,contact.c用来实现整个通讯录的增删查改显示以及排序函数的实现。test.c文

2024-02-21 20:11:38 446

原创 用冒泡排序实现类似qsort的排序函数

介绍了qsort的使用,该函数可以对结构体数组,整形数组等进行排列,以及使用报告冒泡排序来模拟实现qsort,实现出来的结果和库函数的功能基本一致

2024-02-18 15:10:33 994 1

原创 三子棋的实现

实现该三子棋主要函数包括,初始化数组函数,打印棋盘函数,玩家下棋的函数,电脑下棋的函数以及最后输赢继续平局的判断函数。

2024-02-12 14:23:36 288 1

原创 扫雷游戏的实现(粗略版)

本文主要介绍初级的扫雷版本也就是9*9的,为了方便测试放置雷的数量是79个,实现的文件有game.h用来声明和定义,game.c扫雷游戏的实现的函数实现以及test.c文件用来测试扫雷游戏的进行的。

2024-02-07 18:38:48 840 1

原创 C语言分支和循环(下)

C语言是程序化设计的语言,包含顺序结构,分支结构以及循环结构,本篇文章主要介绍循环结构的语法规则以及一些用法和例子,例子可能会配合着分支结构进行使用。循环结构包括while,for以及do...while结构。while循环结构的语法如下,跟if语句很像但if满足条件就自行以此,而while只要满足表达式(表达式为真)就自行语句,单条语句写成下面的如果这个语句有多条可以写成如下(单条语句也可这样写便于阅读):while执行的流程图如下所示例如,给定两个数,求这两个数的最大公约数。思路:将较大的整

2024-02-05 15:34:00 1037

原创 C语言分支和循环(上)

本文主要介绍了if else的语法规则,一些基本用法以及例子,还介绍了switch case的语法规则,一些基本用法以及例子

2024-02-05 14:08:35 593

原创 汉诺塔问题

总结:将汉诺塔问题用递归的方式来解决,其核心是不需要关注中间具体是如何操作的,可以将函数hannuo当做一个已经实现好了的黑盒子可以计算从n,n-1...等移动的次数的一个函数,要想计算n个盘子移动的次数,则需要计算n-1个盘子移动的字数...,而限制条件是a==1时可以返回结束继续的递推,紧接着便是一层一层的回归,这也是递归的意思,先递推在回归,所以在实现的时候直接调用函数hannuo以此来实现递归。(3)移动的过程中这些盘子可以放A,B,C这三根柱子任意的柱子上。(2)上面的盘子要比下面的盘子小。

2024-02-02 22:14:21 272

空空如也

空空如也

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

TA关注的人

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