自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 用小朋友围圈来解释双向链表

本文介绍了一个双向循环链表的实现,通过模拟“班主任”和“小朋友”的关系,展示了链表的创建、初始化、插入、删除、查找和销毁等操作。每个操作都通过代码和图示详细说明,帮助理解链表的动态管理。例如,LTBuyNode用于创建新节点,LTInit初始化链表,LTPushBack和LTPushFront分别在链表尾部和头部插入节点,LTFind查找特定节点,LTErase删除指定节点,LTDesTroy销毁整个链表。每个操作的时间复杂度也被列出,大多数操作的时间复杂度为O(1),查找和销毁操作的时间复杂度为O(n)。

2025-05-18 10:38:33 382

原创 单链表:多米诺骨牌的奇妙旅程

文章详细介绍了单链表(SLTNode)的结构和操作,通过多米诺骨牌的比喻形象地解释了链表的工作原理。单链表由节点(骨牌)组成,每个节点包含数据(骨牌上的数字)和指向下一个节点的指针(瞄准器)。文章定义了链表的创建、打印、插入、删除、查找和销毁等核心操作,并分析了每种操作的时间复杂度。头部操作(如头插、头删)效率高(O(1)),而尾部操作(如尾插、尾删)需要遍历链表,效率较低(O(n))。单链表适合频繁在已知位置插入删除的场景,但不适合需要随机访问或频繁查找的场景。文章还强调了二级指针在修改链表头指针时的重要

2025-05-13 20:24:42 986 3

原创 用可视化学习逆置法

目标:将这个彩色数组向右旋转3步我们希望得到接下来我们用可视化的方式来描述逆置法的过程。

2025-05-03 19:48:09 610 4

原创 用可视化学习双指针法

特性合并有序数组删除重复元素移除元素指针方向从后往前从前往后从前往后指针数量3个2个2个慢指针功能定位放置位置标记不重复元素边界收集需保留的元素快指针功能比较选择元素探索新元素筛选有效元素元素处理每次选较大的只保留不重复的只保留非目标值返回值无需返回dst+1dst。

2025-05-03 12:59:34 1051 1

原创 顺序表:电影院里的观众排座

操作时间复杂度电影院类比随机访问(查看某座位)O(1)直接看一眼第N号座位尾部插入(后排入座)O(1)/O(n)直接坐到最后,除非需要扩建影厅头部插入(前排入座)O(n)所有观众都要向后移动一个座位中间插入(中间入座)O(n)指定位置及之后的观众都要向后移动尾部删除(后排离场)O(1)最后一个观众直接离开,不影响其他人头部删除(前排离场)O(n)所有后排观众都要向前移动一个座位中间删除(中间离场)O(n)指定位置之后的观众都要向前移动查找(寻找某观众)

2025-04-27 21:14:23 995 5

原创 结构体补充:位段

位段的声明和结构体是类似的,有两个不同:1.位段的成员必须是int、unsigned int 或 signed int 和 char,在C99中位段成员的类型也可以选择其他类型。2.位段的成员后面有一个冒号和一个数字。

2025-04-02 09:31:18 760 5

原创 自定义类型:联合和枚举

像结构体一样,联合体也是由一个或者多个成员构成,这些成员可以是不同的类型。但是编译器只为最大的成员分配足够的内存空间。联合体的特点是所以成员共用同一块内存空间。所以联合体也叫:共用体。给联合体其中一个成员赋值,其他成员的值也跟着变化。

2025-04-02 09:30:57 624 1

原创 自定义类型:结构体

/代码1:变量的定义int x;int y;}p1;//声明类型的同时定义变量p1//定义结构体变量p2//初始化//代码2struct Stuint age;//初始化//指定顺序初始化//代码3int data;//结构体嵌套初始化//结构体嵌套初始化。

2025-03-31 21:15:50 11218 2

原创 C语言内存函数

函数memcpy从source的位置考试向后复制num个字节的数据到destination指向的内存位置。这个函数在遇到' \0 '的时候并不会停下来。如果source和destination有任何的重叠,复制的结果都是未定义的。注:只关注要拷贝的数据在哪里,要存放到哪里,拷贝几个字节,至于内存中存放什么数据,什么类型的数据,都不重要!!!memcpy的模拟实现。

2025-03-10 20:53:56 335

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

C语言中有一系列的函数是专门做字符分类的,也就是一个字符是属于什么类型的字符的。这些函数的使用都需要包含一个头文件ctype.h。这些函数的使用方法非常相似,例如:islower是能够判断参数部分的c是否是小写字母的。通过返回值来说明是否是小写字母,如果是小写字母就返回非0的整数,如果不是小写字母,则返回0。练习:写一个代码,将字符串中的小写字母转大写,其他字符不变。

2025-02-25 11:37:35 338

原创 算法复杂度(1)

数据结构是计算机储存、组织数据的方式,指相互之间存在的一种或多种特定关系(增删查改)的数据元素的集合。没有一种单一的数据结构对所有用途都有用,所以我们要学各式各样的数据结构,如:线性表、树、图、哈希等。

2025-02-24 10:06:37 1321 2

原创 分支和循环1

表达式成立(为真),则语句执行;表达式不成立(为假),则语句不执行在C语言中,0为假,非0表示真,也就是表达式的结果如果是0,则语句不执行;表达式的结果如果不为0,则语句执行。例子:输入一个整数,判断是否为奇数。

2025-01-26 02:20:33 1072

原创 深入理解指针(1)

假设有一栋楼,楼上有一百个房间,但是房间没有编号,把你放在某个房间,你的一个朋友来找你玩,如果想找到你,就得挨个房子去找,这样效率很低,但是我们如果根据楼层和楼层房间的情况,给每个房间编上号,那么你的朋友很容易就可以找到你了。我们知道计算机上CPU(中央处理器)在处理数据的时候,需要的数据是在内存中读取的,处理后的 数据也会放回内存中,那我们买电脑的时候,电脑上内存是 8GB/16GB/32GB 等,那这些内存空间如 何⾼效的管理呢?其实也是把内存划分成一个个的内存单元,每个内存单元的大小取一个字节。

2024-12-03 21:05:49 1922

原创 操作符详解(补充)

/代码1:变量的定义int x;int y;}p1;//声明类型的同时定义变量p1//定义结构体变量p2//代码2:初始化struct stuchar age;//初始化//指定顺序初始化//代码3:int data;//结构体嵌套初始化。

2024-11-14 23:50:44 323

原创 操作符详解(1)

•算术操作符:•移位操作符:<< >>•位操作符:& | ^•赋值操作符:+=-=*=/=%=<<=>>=&=|=^=•单⽬操作符:!++--sizeof类型•关系操作符:>=<===!•逻辑操作符:&&||•条件操作符:?•逗号表达式:•下标引⽤:[ ]•函数调⽤:( )结构成员访问:.->2.二进制和进制转换我们经常能听到2进制、10进制、8进制、16进制这样的讲法,那是什么意思呢?

2024-11-12 19:23:32 889 1

原创 C语言数据类型和变量

printf()的作用是将参数文本输出到屏幕。它名字里的f代表format(格式化),表示可以定制输出文本的格式。printf()不会在行尾自动添加换行符,运行结束后,光标就会停留在输出结束的地方,不会自动换行。为了让光标移到下一行的开头,可以在输出文本的末尾,添加一个换行符\n。printf()是在标准库的头文件stdio.h定义的。使用这个函数之前,必须在源码文件头部引入这个头文件。

2024-10-23 21:25:05 2226

原创 C语言常见概念(2)

关键字都有特殊的意义,是保留给C语言使用的;程序员自己在创建标识符的时候是不能和关键字重复的;关键字也是不能自己创建的。

2024-10-18 00:23:05 840 1

原创 C语言常见概念(1)

(因为我写代码使用的是VS2022,所以介绍以VS为主)在VS上写代码,我们需要需要创建项目,可以直接新建项目。C语言把.c为后缀的文件称为源文件,把.h为后缀的文件称为头文件。为了不再重复实现常见的代码,让程序员提升开发效率,C语言标准规定了一组函数,这些函数再由不同的厂商根据标准进行实现,提供给程序员使用。这些函数组成了一个函数库,被称为标准库,这些函数也被称为库函数。一个系列的库函数一般会声明在同一个头文件中,所以库函数的使用,要包含对应的头文件。

2024-10-07 10:04:12 1648 2

原创 编程小白的学习计划

相信在三个月之后我将会收获一个全新的自己!!!

2024-10-04 18:08:39 275 2

空空如也

空空如也

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

TA关注的人

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