![](https://img-blog.csdnimg.cn/20201014180756919.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
yj7758423
这个作者很懒,什么都没留下…
展开
-
前言
作为一个计科大学生,没有学好数据结构一直是我的遗憾,博主主攻java web方向,为了不当一个低端码农,决心静下心来学习数据结构,但是和我当初自学java一样,都存在入门难的问题,严蔚敏的数据结构一直是我的噩梦,概念多且抽象,我希望通过敲代码这种实战的方式学习数据结构,也就放弃了课本。 后来在CSDN上看到贺利坚的课程(收费),和很多人一样,并不想买,后来在贴吧看到免费的观看地址(百度锐聘),就慢原创 2016-07-23 15:44:12 · 252 阅读 · 0 评论 -
线性表——单链表
一张图简单解释下单链表的结果,对头节点,头指针,首节点混肴的同学可以再看看 以下是单链表的头文件和相关操作,这门课很抽象,我个人认为只在脑海中去理解很难做到,因为指针指来指去是个人都会晕,建议大家用笔在纸上画出来,更容易理解 比如单链表的尾插法, 在纸上一画瞬间理解了linklist.h如下:#include <stdio.h> #include <malloc.h>typedef int El原创 2016-07-23 16:00:58 · 310 阅读 · 0 评论 -
线性表——顺序表
线性表描述了一种线性的逻辑结构,元素之间是一对一的关系,而在存储结构上分为顺序存储和链式存储, 分别简称为:顺序表和链表 以下是顺序表的定义方式以及操作,运行环境为Eclipse CDT,程序用到少部分C++特性,新建时选择C++ projectsqlist.h#define MAX_SIZE 50 #define INCREMENT_SIZE 10 /* ElemType可以表示一个复杂的结构原创 2016-07-23 15:45:42 · 344 阅读 · 0 评论 -
线性表——双链表
双链表也是线性表的一种,它的全称是:线性双向链接表,它有以下特点: 在每个节点中除包含有数值域外,设置有两个指针域,分别用以指向其前驱节点和后继节点。 既可以依次向后访问每一个节点,也可以依次向前访问每一个节点。 dlinklist.h如下:#include <stdio.h> #include <malloc.h> typedef int ElemType; typedef struct N原创 2016-07-24 11:27:18 · 482 阅读 · 0 评论 -
栈——顺序栈
栈也是线性表的一种,它描述了一种后入先出的操作,可以用顺序存储结构和链式存储结构实现 顺序栈的定义由两部分组成:typedef struct{ ElemType data[MAX_SIZE]; //存储数据的数组 int top; //栈顶指针,它一开始指向-1 }SqStack;sqstack.h如下:#include <malloc.h> #include <stdio.h>#原创 2016-07-24 13:51:45 · 346 阅读 · 0 评论 -
栈——链栈
链栈只是单链表的一个简单应用,只要理解单链表的头插法,链栈的出栈入栈很好理解。linkstack.h如下:#include <stdio.h> #include <malloc.h> #include <stddef.h>typedef int ElemType; typedef struct Node{ ElemType data; struct Node * next; }Lin原创 2016-07-24 14:21:36 · 545 阅读 · 0 评论