数据结构
wendZzz
若有需要请联系微信号:coolbigflower
微信公众号:前端一起学
展开
-
数据结构-单链表
一、单链表基本定义线性表的链式存储:线性表采用链式方式将结点链接起来的存储结构称之链表。单链表结构,分前后两个域,date数据域:存放结点的值,next指针域:存放数据元素后继的位置。附设头结点的目的:为方便统一空表或非空表的运算处理。其中的基本概念:(1)头结点:数据域无要求,其指针域指向第一个结点,(2)首结点:链表中第一个元素结点,(3)头指针:指向链表开始。单链表C语言...原创 2018-07-30 11:35:07 · 1483 阅读 · 0 评论 -
数据结构-arithmetic栈和队列
2017年学习的数据结构作的笔记,一些算法思想(伪代码实现)在日常学习中仍显得很重要,很多很多,在此记录整理不断补充,反复看反复理解反复记忆,加油!1、判别读入的一个以'@'为结束符的字符序列是否为"回文"(palindrome,正反相同)status palindrome(){ initStack(s);//调用初始化s栈函数 initQueue(Q);//初始化队列...原创 2018-08-08 14:17:39 · 238 阅读 · 0 评论 -
数据结构-arithmetic线性表
2017年学习的数据结构作的笔记,一些算法思想(伪代码实现)在日常学习中仍显得很重要,很多很多,在此记录整理不断补充,反复看反复理解反复记忆,加油!1、寻找第1个比x大的元素的位置int findElem(Seqlist L,int x) //顺序表Sequence list{ int i; for(i=0;i<L.length;++i)//遍历顺序表 { if(x&l...原创 2018-08-06 23:00:49 · 229 阅读 · 0 评论 -
数据结构-栈
1、顺序栈的结构C语言描述#define TRUE 1#define FALSE 0#define Stack_Size 50typedef struct{ StackElementType elem[Stack_Size]; int top;}SeqStack顺序栈的基本操作(1)初始化操作void lnitStack(SeqStack *s){ ...原创 2018-08-06 10:00:04 · 464 阅读 · 0 评论 -
数据结构-顺序表和链表的比较
1、基于空间的比较(1)存储分配的方式顺序表的存储空间是一次性分配的。链表的存储空间是多次分配的。(2)存储密度(存储密度=结点值域所占的存储量 / 结点结构所占的存储总量)顺序表的存储密度=1。链表的存储密度<1(因为结点 中有指针域)。2、基于时间的比较(1)存取方式顺序表可以随机存取,也可以顺序存储(对于顺序表,一般是随机存取)。链表只能顺序存取...原创 2018-07-31 21:50:39 · 483 阅读 · 0 评论 -
数据结构-线性表的链式存储结构
除单链表外,链式存储结构还有循环链表、双链表...1、循环链表结构:尾结点的指针域指向头结点或表的首元结点。特点:表中所有节点都链接在一个环上。(1)循环单链表的合并算法:将两个循环单链表合并成一个单链表。思路:先遍历两个链表找到表尾,再将第一个表的表尾链接第二个表的表头,第二表尾链接到第一表头。//方式一LinkList merge_1(LinkList LA,Lin...原创 2018-07-31 21:24:26 · 355 阅读 · 0 评论 -
数据结构-线性表的顺序存储
一、基本概念1、线性表定义:线性表是有n个类型相同数据元素的有限序列。记作:(a1,a2,a3..ai...an),n为线性长度。2、特点:线性结构是最简单,最直接的数据关系,数据元素之间一一对应。同一性:由同类数据元素组成,每个ai必属于同一数据对象。有穷性:有限个数据元素组成,表长度就是数据元素个数。有序性:相邻元素间有序偶关系<ai,ai+1>。3、直接前...原创 2018-07-27 22:53:35 · 536 阅读 · 0 评论 -
数据结构-结构类型
从事计算机,想要深入学习,不得不涉及到数据结构,重拾起大学时代的这门课程,话说也只是刚刚毕业一个月,但此时的学习完全靠自觉了。数据结构是一门讨论“描述现实世界实体的数学模型(非数值计算)及其上的操作在计算机中如何表示和实现”的学科。也就是说,数据结构就是按照逻辑关系组织起来的一批数据,此处的数据定义为一个运算的集合,是按一定存储方式将其存在计算机中,而结构就是实体+关系。计算机应用系统中的两个...原创 2018-07-27 21:22:02 · 3300 阅读 · 0 评论 -
数据结构-arithmetic二叉排序树
2017年学习的数据结构作的笔记,一些算法思想(伪代码实现)在日常学习中仍显得很重要,很多很多,在此记录整理不断补充,反复看反复理解反复记忆,加油!1、判断是否为二叉排序树(Binary Sort Tree,二叉搜索树)status BST(BiTree T,BiTree &pre)//pre指向被访问的结点的中序前驱{ if(T=Null) retur...原创 2018-08-09 11:47:36 · 220 阅读 · 0 评论 -
数据结构-arithmetic树
2017年学习的数据结构作的笔记,一些算法思想(伪代码实现)在日常学习中仍显得很重要,很多很多,在此记录整理不断补充,反复看反复理解反复记忆,加油!1、孩子-兄弟链(child-sibiling)表示法的树的叶子数量int leaf(csTree T){ if(T==Null) return 0; else if(T->firstchild==Null) ...原创 2018-08-09 10:20:04 · 215 阅读 · 0 评论 -
数据结构-arithmetic二叉树
2017年学习的数据结构作的笔记,一些算法思想(伪代码实现)在日常学习中仍显得很重要,很多很多,在此记录整理不断补充,反复看反复理解反复记忆,加油!1、二叉树先序遍历递归(recursion)算法void preOrderRecursion(BiTree T){ if(T!=Null) { visit(*T);//调用visit()函数 ...原创 2018-08-08 15:56:06 · 315 阅读 · 0 评论