数据结构
文章平均质量分 82
Q酱
这个作者很懒,什么都没留下…
展开
-
链表的各种操作
链表的各种操作typedef struct lnode {elem data;struct lnode *next;}lnode ,*linklist;//建立一个链式表 向表中加入数据status listset(linklist &head){ int n=0;elem x=2;linklist p1,p2;p2=p1=(linklist)mallo原创 2012-03-19 22:24:18 · 263 阅读 · 0 评论 -
栈的应用举例
栈的应用举例 一、目的:掌握栈的表示,实现及其针对栈的各种操作进行具体的应用。 二、要求:1、建立一个顺序栈,实现括号配对,判断一个表达式中括号配对是否合法。2、当用户输入一个合法的表达式后,能够返回正确的结果。能够计算的运算符包括:加、减、乘、除、括号;能够计算的数要求在实数范围内。对于异常表达式给出错误提示。(要求使用静态栈数据结构。) 三、实验内容1、设计原创 2012-03-20 10:54:13 · 516 阅读 · 0 评论 -
查找(2)
查找一、目的:掌握二叉排序树上的基本思想和算法实现,了解其查找方法的时间性能(平均查找长度)分析。 二、要求:实现二叉排序树查找的算法程序二叉排序树的定义:或者是一棵空树;或者是具有下列性质的二叉树:(1)若它的左子树不空,则左子树上所有结点的值均小于根结点的值;(2)若它的右子树不空,则右子树上所有结点的值均大于根结点的值;(3)它的左、右子树也分别为二叉排序原创 2012-03-20 11:04:36 · 369 阅读 · 0 评论 -
查找
查找一、目的:掌握顺序查找、折半查找的基本思想和算法实现,了解怎样对各种查找方法进行时间性能(平均查找长度)分析。二、要求:实现各种查找的算法程序1、顺序查找的基本思想:从表的一端开始,顺序扫描线性表,依次将扫描到的结点关键字和给定值K相比较,若当前扫描到的结点关键字与K相等,则查找成功;若扫描结束后,仍未找到关键字等于K的结点,则查找失败。2、折半查找(二分查找)的基本思原创 2012-03-20 11:03:43 · 406 阅读 · 0 评论 -
图的最小生成树算法
图的最小生成树算法一、目的:掌握网的存储结构,构造网,实现最小生成树算法;二、要求:采用邻接矩阵作为网的存储结构,使用prim算法实现最小生成树。 三、实验内容1、 设计程序,完成无向网的邻接表的存储,构造网,用prim算法生成它的最小生成树。2、 调试程序。设计一个无向网,以邻接表为存储结构,完成最小生成树的操作。四、实验报告画出你所设计的网和最后通过原创 2012-03-20 11:03:01 · 1035 阅读 · 0 评论 -
稀疏矩阵的存储和快速转置
稀疏矩阵的存储和快速转置一、目的:掌握稀疏矩阵的三元组表的压缩存储方法,并且利用该存储方法实现稀疏矩阵的转置与快速转置。 二、要求:输入一个稀疏矩阵A,由程序将其转换成三元组表存储;转置后的三元组表,由程序将其转换成矩阵形式后输出。 三、实验内容1、设计程序。2、调试程序,并设计输入数据。 四、实验报告要求写出程序和实验结果。 #define原创 2012-03-20 10:56:17 · 1842 阅读 · 0 评论 -
链式结构线性表的实现
链式结构线性表的实现一、目的:掌握链表的表示方法,存储结构及其基本操作的实现,灵活使用链表。 二、要求:1、设链式存储线性表的数据类型定义如下typedef char DataType;typedef struct node { DataType data; Struct node *next;} ListNode; 带头结点的链表L是一个递原创 2012-03-20 10:51:48 · 597 阅读 · 0 评论 -
图的遍历操作
图的遍历操作一、目的:掌握有向图和无向图的概念;掌握邻接矩阵和邻接链表建立图的存储结构;掌握DFS及BFS对图的遍历操作;二、要求:采用邻接链表作为图的存储结构,完成无向图的DFS和BFS操作。三、算法思想DFS和BFS 的基本思想:深度优先搜索法DFS的基本思想:从图G中某个顶点Vo出发,首先访问Vo,然后选择一个与Vo相邻且没被访问过的顶点Vi访问,再从Vi出发选择原创 2012-03-20 11:01:57 · 1154 阅读 · 0 评论 -
线索二叉树的实现
线索二叉树的实现一、目的:掌握线索二叉树的定义、性质及存储方式,各种遍历算法。二、要求:采用线索二叉树链表作为存储结构,完成二叉树的建立,对二叉树进行中序线索化,并进行中序遍历。三、实验内容1、设计、分析、理解程序。2、调试程序,设计一棵二叉树,按先序遍历方式输入:“ABD##EH##I##CF##G##”,其中“#”表示空指针。完成二叉树进行中序线索化,并进行中序后继原创 2012-03-20 11:00:53 · 816 阅读 · 0 评论 -
二叉树的遍历应用
二叉树的遍历应用 #include #include #include #define MAXSIZE 100 typedef struct TreeNode{ char data; TreeNode *lchild,*rchild;}TreeNode;void CreateBiTree(TreeNode *&,char []); /原创 2012-03-20 10:59:48 · 635 阅读 · 2 评论 -
栈的实现
栈的实现 一、目的:掌握栈的表示,实现及其针对栈的各种操作。二、要求:建立一个顺序栈,实现栈常用的基本操作。栈的应用基本上基于这些方法实现的。完成用以实现10进制数转换成任意进制(2~9)的数据。三、实验内容1、设计程序。2、调试程序,并设计输入数据。 四、实验报告要求写出程序和实验结果。 #include "iostream.h"//这里还原创 2012-03-20 10:49:23 · 383 阅读 · 0 评论 -
链式结构线性表的实现(二)
链式结构线性表的实现(二)一、目的:掌握链表的表示方法,存储结构及其基本操作的实现,灵活使用链表。 二、要求:修改实验三的程序,完成(1)实现带头接点的单链表的原地逆转(结果链表仍使用原链表的存储空间,不另开辟存储空间)。(2)用带头接点的单向链表实现集合操作 AUB 。(结果链表仍使用原来两个链表的存储空间,不另开辟存储空间)。 三、实验内容1原创 2012-03-20 10:45:49 · 558 阅读 · 0 评论 -
链式结构线性表的实现
链式结构线性表的实现一、目的:掌握链表的表示方法,存储结构及其基本操作的实现。 二、要求:建立一单链表,实现其基本操作:分别使用正位序和逆位序的方法新建一个单链表;完成插入、删除、输出的操作。 三、实验内容1、设计程序。2、调试程序,并设计输入数据。3、修改程序: 如果有时间,请加入其他的基本操作。 四、实验报告要求写出程序和实验结原创 2012-03-20 10:42:30 · 690 阅读 · 1 评论 -
顺序结构线性表的实现
顺序结构线性表的实现一、目的:掌握顺序表的表示方法,存储结构及其基本操作的实现。 二、要求:建立一顺序表,实现其基本操作:新建一个顺序表;判断是否是空表;输入表的长度;输入线性表的各个数据元素的值;求当前表长;取某个位序上的数据元素;求某元素的前驱和后继;删除某个位置上的数据元素;求删除后的表长;置空表;销毁线性表。 三、说明:一个完整的程序是由输入,处理,输出三部原创 2012-03-20 10:37:52 · 997 阅读 · 0 评论 -
二叉树操作实现
二叉树操作实现一、目的:掌握二叉树的定义、性质及存储方式,各种遍历算法。二、要求:采用二叉树链表作为存储结构,完成二叉树的建立,先序、中序和后序以及按层次遍历的操作,用后序遍历的方法求二叉树的深度、以及所有叶子结点的数目及结点总数的操作。三、实验内容1、设计、分析、理解程序。2、调试程序,设计一棵二叉树,输入完全二叉树的先序序列,用#代表虚结点(空指针),如ABC##D原创 2012-03-20 10:57:26 · 755 阅读 · 0 评论