自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 队列--顺序表实现和单向链表实现

【代码】队列--顺序表实现和单向链表实现。

2023-11-16 19:45:48 77

原创 链表--有序链表的合并C语言实现

合并 k 个升序的链表并将结果作为一个升序的链表返回其头节点。

2023-11-15 19:48:09 204

原创 双指针--接雨水问题C语言实现

【代码】双指针--接雨水问题C语言实现。

2023-11-14 20:03:33 87

原创 二分查找--C语言实现

【代码】二分查找--C语言实现。

2023-11-14 19:38:32 58

原创 数据结构--单向不循环链表C语言实现

【代码】数据结构--单向不循环链表C语言实现。

2023-11-14 19:20:09 252

原创 递归--岛屿数量C语言实现

【代码】递归--岛屿数量C语言实现。

2023-11-13 11:26:14 170

原创 递归--最长递增路径C语言实现代码

【代码】递归--最长递增路径C语言实现代码。

2023-11-13 11:10:00 141

原创 C语言--六钟排序总结

【代码】C语言--六钟排序总结。

2023-11-13 10:25:16 179

原创 贪心算法--糖果分配 C语言实现

2. 任意两个相邻的孩子之间,得分较多的孩子必须拿多一些糖果。(若相同则无此限制)给定一个数组 arr 代表得分数组,请返回最少需要多少糖果。1. 每个孩子不管得分多少,起码分到一个糖果。

2023-11-11 16:42:28 192 1

原创 贪心算法--主持人调度

【代码】贪心算法--主持人调度。

2023-11-11 11:52:52 73 1

原创 八皇后--C语言实现

【代码】八皇后。

2023-11-11 11:34:28 140 1

原创 C语言树数据结构

节点的度:一个节点含有的子树的个数称为该节点的度;树的度:一棵树中,最大的节点的度称为树的度;节点的层次:节点的层次:从根开始定义起,根为第1层,根的子节点为第2层,以此类推;树的深度:树中节点的最大层次;叶节点:度为0的节点。二叉树:是指树中节点的度不大于2的有序树,它是一种最简单且最重要的树。二叉树的子树有左右之分,次序不能颠倒,因此二叉树是有序树有n个节点的完全二叉树,若从上往下,从左到右,从0开始给节点编号,那么:若结果大于n,则无左孩子。若结果大于n,则无右孩子。

2023-09-18 12:00:39 233

原创 C语言实现单向链表

【代码】C语言实现单向链表。

2023-09-18 11:43:31 53

原创 C语言实现队列

定义:队列是一种特殊的线性表,特殊之处在于它只允许在表的前端(head)进行删除操作,而在表的后端(tail)进行插入操作,和栈一样,队列是一种操作受限制的线性表。进行插入操作的端称为队尾,进行删除操作的端称为队头。队列的实现适合用链表结构,因为队列不需要随机访问,并且队列大小不确定;

2023-09-13 14:38:18 44

原创 C语言++a和a++

a++和++a都是函数调用,都有返回值,a++的返回值是a自加之间的值;++a的返回值是该变量的引用,不是具体的值;a++是先将a赋值到一个临时空间,再将a+1赋值给临时变量,等运算结束后再返回临时变量给a;++a是直接对a进行a = a + 1赋值,不需要开辟临时空间;

2023-09-13 14:27:30 1730

原创 C语言常见预处理命令

ifndef (或#ifdef)宏名 //宏名一般格式: __头文件名 _ H。表达式1为假,表达式2为真。#elseif 表达式2。

2023-09-13 14:21:00 79

原创 C语言短路求值

也就是判断语句里且&&与或||的逻辑。

2023-09-13 14:20:31 70

原创 C语言左值和右值

定义:左值是等号左边的变量或表达式,一般来说值可以改变;右值是等号右边的变量或表达式,特点是可读;一般左值可以作为右值,但右值不能作为左值;

2023-09-13 14:18:02 205

原创 C语言内联函数

定义:一般函数调用过程,保存当前调用命令地址,程序流跳转到调用函数位置执行,最后跳转回保存的命令地址继续执行;对于经常调用的短小函数,这样就会降低程序效率;所以inline关键字告诉程序,在调用内联函数时,直接将函数的机器码插入到调用位置,这样程序执行更有效率。内联函数默认是被static修饰的,在每个用到内联函数的翻译单元中,都必须重复定义这个内联函数,所以一般在头文件定义。inline 修饰符并非强制性的:编译器有可能会置之不理。

2023-09-13 14:15:27 76

原创 C语言指针作为函数参数

如果函数内不修改作为形参的指针的指向的情况下,就修改指针所指向的内容,那么就会影响传递过来的指针;

2023-09-13 12:51:22 77

原创 C语言二维数组

【代码】C语言二维数组。

2023-09-13 12:48:27 41

原创 C语言一维数组和指针

【代码】C语言一维数组和指针。

2023-09-13 12:16:56 45

原创 C语言指针的运算

指针减指针:一般用于同一个数组,测量两个元素的距离;这个距离不是以字节为单位,是以元素类型的长度为单位。计算结果为1,但是其地址已经指向a[1]了,只是因为是后++,是返回计算前的值。指针加1,不是地址加一个字节,要看指针指向的类型,加一个类型的长度。1再自增,所以结果为2,p指向的还是a[0];先执行++p,所以p指向的是a[1];*和++运算优先级一样,结合性是从右到左;指针加指针:指针之间不能进行加法运算。计算结果为1,p指向的还是a[0];二级指针:指向指针的指针。

2023-09-13 12:12:17 52

原创 C语言函数指针和指针函数

指针函数:返回值是指针的含税。函数指针:指向函数的指针变量。

2023-09-13 12:01:27 32

原创 C语言堆和栈

堆空间分配过程:操作系统有一个记录空闲内存地址的链表,申请堆空间时系统会遍历该链表,找到第一个大于或等于申请大小的空间,将此空间从链表删除,并分配给程序变量;由于找到的堆节点的大小不一定正好等于申请的大小,系统会自动地将多余的那部分重新放入空闲链表。显然,堆的效率比栈要低得多。一般指堆内存泄漏,一般由于分配内存后未释放造成,或者指向申请的内存指针又指向了另外的空间,导致找不到之前申请的内存;栈的内存地址生长方向由高到底,所以后定义的变量地址低于先定义的变量。每个进程拥有的栈的大小要远远小于堆的大小。

2023-09-13 11:56:47 76

原创 C语言常见关键字

就是错误的,因为声明不会分配地址,也就不能赋值;作用:告诉编译器该变量是容易发生变化的,不能对该变量进行优化,每次取值都必须从内存中去取,不可去之前取值的寄存器去取;在一个文件中需要应用其他文件中定义的函数或变量,就可以在文件中通过extern声明所需函数或变量,在链接阶段起作用;如:在a文件需要引用b文件的int val变量,就可以在a文件用到val变量之前extern int val;如果修饰的是个全局变量(已初始化),存放在只读数据段(未初始化的存放在bss段),该变量不可以被指针修改。

2023-09-13 11:49:58 40

原创 C语言 源码、反码、补码

正数的源码、补码、反码一样负数的反码,符号位不变,其余位对源码取反负数的补码,符号位不变,其余位对源码取反加1举例:(八位)1的:源码:0000 0001 (0x01)反码:0000 0001 (0x01)补码:0000 0001 (0x01)举例:(八位)-1的:源码:1000 0001 (0x81)反码:1111 1110 (0xFE)补码:1111 1111 (0xFF)

2023-09-13 11:08:44 491

原创 C语言三目运算符

表达式b : 表达式c;如果表达式a值为1,执行表达式b;如果表达式a值为0,执行表达式c;

2023-09-13 10:43:32 33

空空如也

空空如也

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

TA关注的人

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