数据结构
文章平均质量分 83
繁城落叶
这个作者很懒,什么都没留下…
展开
-
数据结构笔记:线性表链式存储结构
存在头结点(不存放任何数据)的链表。#include #include typedef int ElemType;typedef struct Node//链表节点{ ElemType data;//链表数据 struct Node *next;//链表指针,用来指向下一个节点}Node;/*void InitList(Node **P)//建立一个头结点,原创 2016-07-05 08:54:10 · 735 阅读 · 0 评论 -
数据结构笔记:线性表顺序存储结构(C语言)
线性表的顺序存储结构,指的是用一段地址连续的存储单元依次存储线性表的数据元素。这里用C语言的一位数组来实现顺序存储结构。·线性表的数据对象集合为{a1,a2,a3......an},每个元素的类型均为一样的。其实,除第一个元素a1外,每一个元素有且只有一个直接前驱元素,除了最后一个元素an外,每一个元素有且只有一个后继元素。数据元素之间的关系是一对一的关系。OperationI原创 2016-07-04 00:23:00 · 1308 阅读 · 0 评论 -
数据结构笔记:静态链表(C语言)
动态链表之所以称之为动态,因为它的存储管理方便,用的时候申请空间,不用的时候释放掉空间。静态链表的目的就是通过函数实现模拟动态链表中的申请空间和释放空间,同是也要记录下一个节点的位置,那么需要解决几个问题。1.如何模拟动态节点。动态链表需要空间的时候用malloc函数来从计算机系统中申请空间,并返回该空间的地址以便操作,释放空间时用free函数将该空间重新返回给计算机系统中。原创 2016-07-07 14:18:31 · 1865 阅读 · 0 评论 -
C++:表达式翻译
课程设计中的题目,要求设计一个程序将输入中缀表达式转换成后缀表达式,再将根据后缀表达式计算出对应的数值,这也应该就是所谓的计算器在处理用户所输入的算式时,所作出的计算过程。如:输入中缀表达式:(1+2)*3+4 ,计算器会将其转换为后缀表达式:1 2 + 3 * 4 +,其中去除了括号,然后计算器再根据特定的算法将其计算成数值:13。这个程序就是类似的工作过程。其中使用到了链栈的数原创 2016-12-12 16:00:12 · 1484 阅读 · 0 评论 -
循环队列解决约瑟夫环问题。
约瑟夫环(约瑟夫问题)是一个数学的应用问题:已知n个人(以编号1,2,3...n分别表示)围坐在一张圆桌周围。从编号为k的人开始报数,数到m的那个人出列;他的下一个人又从1开始报数,数到m的那个人又出列;依此规律重复下去,直到圆桌周围的人全部出列。使用数据结构中的循环队列来解决这个问题:Status.h#define TRUE 1#define FALSE 0#de原创 2016-12-18 14:11:37 · 12259 阅读 · 3 评论 -
二叉树的链式结构。
二叉树的链式结构创建(创建时采用先序遍历顺序创建)、求二叉树的深度、求二叉树的叶子节点、求二叉树的总节点、先序遍历、中序遍历、后序遍历。Status.h#define TRUE 1#define FALSE 0#define OK 1#define ERROR 0#define INFEASIBLE -1#define OVERFLOW -2typedef int St原创 2016-12-26 15:36:51 · 1490 阅读 · 0 评论