自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 【数据结构】-- 相交链表-环形链表

如果链表的两条链的长度一样,链表两端对齐,解决这个问题将会变得非常简单,直接分别遍历两个链表,想等时的节点即为所求。我们想办法让链表对齐--分别从a和b遍历链表,分别求出以a开始和以b开始时的链表长度,求出a,b之差的绝对值k。然后再让较长一端先走k步,这样就对齐了。然后再同时遍历链表,两端相等时,这个节点即为所求。其实,这就是一个快慢指针的解法,快慢指针每次都只走一步,只不过快指针先走使链表对齐。

2024-05-13 23:29:38 771 10

原创 【算法】-- 二分查找详注

二分查找,也称为折半查找;首先,二分查找是一种基于有序数组中查找特定元素的算法,所以它会因为数组的一些特性而受限。它的工作原理是不断将要查找的区间分成两部分,然后确定目标值可能存在的区间,直到找到目标值或者确定目标值不存在为止。这个算法的时间复杂度为O(log n),其中n是数组的大小。二分查找通常比线性查找(暴力查找)快,尤其是在大型数组中查找元素时。

2024-05-08 17:23:55 552 13

原创 【数据结构】-- 链表专题

前面我们实现了单链表,单链表只是链表的一种。

2024-04-30 23:09:04 645 8

原创 【数据结构】-- 单链表的实现

仔细观察,凡是不需要遍历链表的操作,我们就不许要传二级指针做形参。例如删除指定位置之后的数据和在指定位置后插入数据就不需要传二级指针。在对某一个节点进行操作时,要考虑两个方面,一要对指定的节点进行操作,二要调整相邻节点的指针,使得链表的结构得以维护。t=N7T8。

2024-04-21 16:46:39 1207 19

原创 顺序表的应用----通讯录

前面我们学习了顺序表的实现,接下来我们一起来运用一下吧--用顺序表实现通讯录。

2024-04-15 16:05:48 1052 10

原创 基于数组的数据结构--顺序表

一个学校里,学生可能有成千上万,非常不方便管理,要找一个学生非常难。把学生基于年级班级分成一个个的班级,这样就可以很轻松的找到某一个学生。在计算机中,有着各种数据需要处理,因此引入了数据结构。数据:什么是数据呢?日常生活中的图片,听的音乐,储存的联系人,这些都是数据。结构:帮数据结构就是处理数据的方式,例如给知识做思维导图,把知识联系到一起。在计算机中我们要处理很多不同的数据,单个的数据不方便管理。因此引入了数据结构。数据结构是一种特定的数据组织方式,它定义了数据之间的关系、操作和存储方式。

2024-04-10 17:13:32 624 9

原创 动态内存管理

realloc函数的目的是修改已分配内存块的大小,如果新的大小比原来的大,那么系统会尽可能地将原来的数据复制到新的更大的内存块中,并且释放原来的内存块。如果新的大小比原来的小,那么原来的内存块可能会被移动到一个较小的内存块中,但是原来位置的内容仍然会被保留在新的内存块中。malloc就是C语言为我们提供的开辟内存空间的函数,这个函数向内存申请⼀块连续可用的空间,并返回指向这块空间的指针。原来的内存后有足够的空间用来开辟,新开辟的内存接在原来的内存之后,原来的内存不会改变。malloc(开辟空间)

2024-03-31 21:33:12 398 2

原创 深入理解指针(2)

在使用函数的时候,我们会传入需要的参数,函数会创建形参来接受,有两种情况:一种是将地址指向的值传入到函数当中,另一种是直接传入地址。传值调用传值调用,创建的形参x,y使用了新的地址,接受了a,b的值,但是x,y相对a,b已经独立了,对x,y的操作已经不能影响到a,b了。所以交换前后,ab的值不变。传址调用传址调用直接用形参接收地址,通过对地址的操作而可以直接影响ab,从而实现交换。

2024-03-24 10:37:07 1025 3

原创 深入理解指针(1)

内存和地址大家都知道,计算机将信息储存在内存中,那么计算机是如何从内存中读取数据的呢?就像我们上课找教室一样,我们根据教室的门牌号来找到正确的教室才能上课。那么计算机中有没有一个门牌号呢?计算机中,内存被分成一个一个的内存单元,每个内存单元的大小取一个字节,每一个内存单元都被编了号,这个编号就是地址(指针),所以 内存的编号 == 地址 == 指针。计算机中的编址,并不是把每个字节的地址记录下来,通过硬件完成。CPU和内存之间的数据传输是通过三组总线连接的,分别是地址总线、数据总线和控制总线。

2024-03-18 21:03:06 901 3

原创 函数和数组实践 --扫雷游戏

扫雷是一款流传度较广的小游戏,我们大多玩过或听说过,学习了函数数组之后,现在让我们一起动手做一个扫雷游戏把。

2024-03-05 20:38:54 922

原创 分支循环语句(C语言)

C语言是结构化的程序设计语言,一般分为顺序结构,选择结构和循环结构if语句就属于选择结构,根据条件的成立与否选择语句是否执行if语句的基本语法if(表达式)语句若表达式成立会返回一个非零的值表示真则代码执行,反之返回一个0表示假,语句不执行。基本语法(表达式)语句语句若If中的表达式返回值为0(为假)则执行else的语句if和else都可以嵌套if else结构。

2024-01-28 11:06:18 386 4

空空如也

空空如也

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

TA关注的人

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