![](https://img-blog.csdnimg.cn/20201014180756926.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 61
组织代码的形式
C_W@......
做一个简单的人,平和而执着,谦虚而无畏
展开
-
二维数组究竟怎样存储
二维数组其实就是一个矩阵:那么问题来了,二维数组在内存中存储空间时连续的吗?int[][] array = new int[3][4]; 这个二维数组可不是在一个3*4连续空间存储如图所示:所以二维数组在内存中不是3*4的连续空间,而是三条连续的内存地址空间...原创 2021-04-21 12:31:22 · 854 阅读 · 0 评论 -
顺序表(C)
忘了最基础的一种线性表了,那就是数组,今天来谈谈顺序表,先谈谈用C语言实现顺序表基础:结构体://首先创建一个结构体,用来实现对于数组的用法typedef struct Arr{ int* pBase;//整个数组的首地址 int len;//所创建数组的长度 int cen;//目前数组中有效个数}Arr;;顺序表的创建void init_shuzu(Arr* array,int length){//创建一个数组只需要两个参数就是主函数已创建好的数组和创建数组的长度 arr原创 2021-03-23 10:43:29 · 190 阅读 · 0 评论 -
队列(C)
又来了,继续更新队列,来看百度百科介绍;点击了解详细概念,接下来我想直接说重点:数组实现队列,想记住想要多次使用这个队列,那就是用循环队列,什么叫循环队列,前面的链接写的很清楚了。一.怎样实现循环队列0,1,2,3,4,5——>长度为6的数组下标是这几个对吧,0,1,2,3,4到下一个都好说,那就是加一,但是让5怎样回到0呢,而且保证也加一,很简单:(5+1)%6 == 0,同理(0+1)%6 == 1,规律出来了 (num + 1)%数组长度 就可以还需要注意的一点就是:长度为6的数组只原创 2021-03-22 09:55:56 · 110 阅读 · 0 评论 -
栈C
持续更新,今天来谈谈栈百度百科中解释:栈,存储货物或供旅客住宿的地方,可引申为仓库、中转站,所以引入到计算机领域里,就是指数据暂时存储的地方,所以才有进栈、出栈的说法。而今天我们谈的是数据结构中的栈一.构成栈的基本单位栈:在我看来就是将一个特殊的链表进行包装,而这个链表特殊就特殊在只允许在一端进行添加元素和删除元素。也就是所说的:在栈顶端压入元素和弹出元素。1.前面介绍过:在C中实现链表的基本单位是结构体,还是那两部分:data和pNext(存放下一个结点的地址)2.对于栈,如何做到控制从栈顶压原创 2021-03-21 19:28:11 · 74 阅读 · 0 评论 -
链表相关操作
很久没有更新,今天就以链表来进行新一轮的操作简单介绍链表(C)说直白一点:链表在C中就是自己用结构体实现一个数据类型,然后这些数据类型大量连接在一起构成一个存放数据的结构。与数组不一样的就是,在内存中数组是连续的,链表不是连续,是因为该结构体中有一成员是指针类型,有关于指针问题,以及指针大小,不知道的大家可以点击这里了解。还需补充知识就是:结构体,malloc动态开辟内存空间最根本的单元:struct Nodetypedef struct Node { int data;//成员中用来存放数据的原创 2021-03-20 10:07:41 · 155 阅读 · 0 评论