自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 常见的七大排序

本文介绍七种常见的排序方式:冒泡排序,选择排序,插入排序,堆排序,希尔排序,快排,归并排序。

2024-06-23 21:53:35 1004

原创 二叉树oj联习

定义oj题目采用递归的思想在gaodu函数中算出左子树的高度和右子树的高度相减进行比较再用递归遍历左右子树依次算出每个结点的左右子树高度比较,只要有一个不符合条件则不为平衡二叉树代码展示。

2024-06-11 18:35:30 183

原创 二叉树讲解

本文讲解关于二叉树的创建和各种功能的实现,重点讲解前,中,后和层序遍历的写法(层序遍历放到了本文前面先讲,如果是刚接触二叉数可以先看功能展示)前中后序的遍历都用到了递归都写法而层序遍历使用创建队列的方式来解决

2024-06-04 21:50:57 612

原创 二叉堆讲解

完全二叉树和不完全二叉树的概念二叉堆必须是一颗完全二叉树,否则数组有空缺无法建堆像这样任意1子小于其父的或者像这样任意1子大于其父的都称为二叉堆结构体创建。

2024-05-28 21:54:26 309 2

原创 栈与队列的联系

本文总结栈与队列的优缺点,栈与队列的创建,栈与队列的相互转换和栈与队列的拓展应用。

2024-05-19 19:40:33 382 3

原创 有效的括号

c语言用栈的思想解决括号匹配问题给定一个只包括'('')''{''}''['']'的字符串s,判断字符串是否有效。

2024-05-14 18:30:37 277 3

原创 栈的创建以及原地扩容与异地扩容详细讲解

栈:一种特殊的线性表,其只允许在固定的一端进行插入和删除元素操作。进行数据插入和删除操作的一端 称为栈顶,另一端称为栈底。栈中的数据元素遵守后进先出LIFO(Last In First Out)的原则。压栈:栈的插入操作叫做进栈/压栈/入栈,入数据在栈顶。出栈:栈的删除操作叫做出栈。出数据也在栈顶。简单来说:栈是遵循后进先出原则的线性表物理线性和理论线性既然规定了栈为一种特殊的线性表那么它一定是理论线性的那它是否是物理线性呢?这时需要插一段原地扩容与异地扩容的知识先看下面这段代码。

2024-05-12 19:11:36 198 1

原创 链表带环判断及查找问题

本文详细介绍了带环链表的判断与入环结点的查找,对算法进行剖析主要采用了快慢指针,数学运算等方法将问题简化编译语言:c。

2024-05-11 21:45:43 334 1

原创 贪吃蛇项目实践

详细介绍了vs环境下c语言贪吃蛇项目的操作步骤,适合入门的同学参考复习

2024-05-09 20:26:32 850 1

原创 C语⾔内存函数

和memcpy的差别就是memmove函数处理的源内存块和⽬标内存块是可以重叠的。如果source和destination有任何的重叠,复制的结果都是未定义的。memset是⽤来设置内存的,将内存中的值以字节为单位设置成想要的内容(如果源空间和⽬标空间出现重叠,就得使⽤memmove函数处理。⽐较从ptr1和ptr2指针指向的位置开始,向后的num个字节。函数memcpy从source的位置开始向后复制num个。的数据到destination指向的内存位置。这个函数在遇到 '\0' 的时候并不会停下来。

2024-03-28 13:08:28 186

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

⽐较str1和str2的前num个字符,如果相等就继续往后⽐较,最多⽐较num个字⺟,如果提前发现不⼀ 样,就提前结束,⼤的字符所在的字符串⼤于另外⼀个。如果source 指向的字符串的⻓度⼩于num的时候,只会将字符串中到 \0 的内容追加到destination指向的字符串末尾。strtok函数的第⼀个参数不为 NULL ,函数将找到str中第⼀个标记,strtok函数将保存它在字符串 中的位置。strtok函数的第⼀个参数为 NULL ,函数将在同⼀个字符串中被保存的位置开始,查找下⼀个标 记。

2024-03-26 15:54:55 468 1

原创 指针的深入理解

本文整理了一些指针常见的知识点char* 类型的指针变量+1跳过1个字节, int* 类型的指针变量+1跳过了4个字节。const如果放在*的左边,修饰的是指针指向的内容,保证指针指向的内容不能通过指针来改变。const如果放在*的右边,修饰的是指针变量本⾝,保证了指针变量的内容不能修改,但是指针指 向的内容,可以通过指针改变。NULL 是C语⾔中定义的⼀个标识符常量,值是0,0也是地址,这个地址是⽆法使⽤的,读写该地址 会报错。//将int*重命名为ptr_t。

2024-03-25 17:00:34 587

原创 c语言入门复习回顾

注: dec 为十进制 oct为八进制 hex为十六进制 ch为字符ASCLL一共有128个编码%c 用来打印单个字符(' ')%s 用来打印字符串(char类型字符串后自带\0字符,\0为字符串结束的标志)(" ")

2024-01-11 18:52:02 398 1

原创 八皇后问题解决

八皇后的问题超详细解决方法

2024-01-04 23:58:41 555 1

原创 VS实用调试技巧

F9:创建断点和取消断点 断点的作⽤是可以在程序的任意位置设置断点,打上断点就可以使得程序执⾏到想要的位置暂定执 ⾏,接下来我们就可以使⽤F10,F11这些快捷键,观察代码的执⾏细节。在函 数调⽤的地⽅,想进⼊函数观察细节,必须使⽤F11,如果使⽤F10,直接完成函数调⽤。在调试的过程中我们,如果要观察代码执⾏过程中,上下⽂环境中的变量的值,有哪些⽅法呢?F10:逐过程,通常⽤来处理⼀个过程,⼀个过程可以是⼀次函数调⽤,或者是⼀条语句。F5:启动调试,经常⽤来直接跳到下⼀个断点处,⼀般是 和F9配合使⽤。

2023-12-30 23:34:14 410 1

原创 找出3个字符串中的最大值

*在vs编译器中gets函数不能正常使用应写为gets_s**这是因为gets()函数不稳定:gets()函数不检查目标数组是否能够容纳输入,而若想把一个字符串读到程序中,最先要做的事情就是预留存储字符串的空间。所以这很容易导致分配的空间不够大而数组越界,然而gets()函数并不检查这个方面,所以导致的结果就是程序很容易出现漏洞,著名的“蠕虫”病毒的原理就是用很长的数据覆盖原有数据导致崩溃。

2023-12-27 18:16:26 1111 1

原创 查询天数代码

注:bool使用前需要包含头文件stdbool.h。已知年数%4等于0并且年数%100不等于0为闰年。闰年2月为29天所以要单拿出来考虑。输入年月即可查询天数。

2023-12-13 23:57:04 69 2

原创 有序合并数列

将数组的下标定义,每个数组的按照下标顺序依次比较大小把小的留下即可。注:此方法前提为有序的数列,所以我们需要先将数列们排好序再合并。合并一系列数组并排序普通的方法可以直接将数组合并后再进行排序。而这里给大家介绍一个更优的有序合并数列法。

2023-12-13 23:49:31 61 2

原创 矩阵转置代码

值得注意的是:其中的arr[n][m]在vs2022中并不支持。这里提供一个将矩阵行和列转换的代吗。

2023-12-11 23:38:46 56

原创 猜数字游戏代码

这里提供一个可以猜数字的游戏代码。

2023-12-11 19:45:10 25 1

原创 乘法口诀表

printf中的%-4d是为了让打印沾满格子防止歪行。这里是一个乘法口诀表。

2023-12-11 19:25:16 71

原创 二分法查找

值得注意的是,这段代码里的------这串代码可以方便大家计算出一个字符所占用的字节sizeof(arr)计算了全部的字节数,而sizeof(arr[0])则计算了一个字符所占的字节数sizeof(arr)/sizeof(arr[0])则计算出了一个字符所占用的字节注:(sizeof函数需标注头文件stlib.h)

2023-12-11 17:12:08 60

原创 自我介绍(第一次)

今天第一天发布csdn的文章,以后会分享一些c/c++的代码,希望和大家一起讨论。大家好,这里是深海时光鱼。

2023-12-11 16:37:01 38 1

空空如也

空空如也

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

TA关注的人

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