![](https://img-blog.csdnimg.cn/20201014180756738.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
数据结构
文章平均质量分 59
android小猪
小胜靠智,大胜靠德
展开
-
第一章 绪论习题参考答案
原文地址:绪论习题参考答案">第一章 绪论习题参考答案作者:tanzj1、操作对象 关系 2、数据元素 关系 3、逻辑结构 存储结构 运算 4、线性结构 非线性结构 5、 一对一 一对多 多对多 6、没有 没有 7、前驱 1 后续 任意多个 8、任意多个 9、顺序 链式 索引 散列10、插转载 2013-04-25 17:35:07 · 2398 阅读 · 0 评论 -
单链表的基本操作
最近在看数据结构的知识点,自己对数据结构的掌握不是很好,所以就把弱的地方提炼出来,以便以后查看。#include#include#define ERROR 0;#define OK 1;typedef struct Node{ int data; struct Node *next;};struct Node *LinkList;//初始化单链表void原创 2013-05-09 22:28:07 · 760 阅读 · 0 评论 -
数据结构中树的创建和三种遍历方式的应用
自己对这一块的知识掌握的不是很好,所以就整理了一下,下面是代码;#include#includetypedef struct tree_node{ char data; struct tree_node *lchild,*rchild;}BT_node;BT_node *tree;//树的创建BT_node *creat_tree(BT_node *tree)原创 2013-05-13 21:58:37 · 1848 阅读 · 1 评论 -
第三章 栈和队列练习题
原文地址:栈和队列练习题">第三章 栈和队列练习题作者:tanzj1、顺序栈S,栈顶指针为top,则栈置空操作是____________.2、设有一栈,结点结构为data | next栈顶指针为h.则执行*s结点入栈操作是________和__________.3、栈是一种特殊的_________,又称为_________.4、判定一个栈ST(最多元素为m0)为空的条转载 2013-04-25 17:35:13 · 5148 阅读 · 2 评论 -
数据结构排序系列详解之六 树形选择排序
这篇博客接着来说说选择类排序之一的排序:树形选择排序在简单选择排序中,每次的比较都没有用到上次比较的结果,所以比较操作的时间复杂度是O(N^2),想要降低比较的次数,则需要把比较过程中的大小关系保存下来。树形选择排序是对简单选择排序的改进。树形选择排序:又称锦标赛排序(Tournament Sort),是一种按照锦标赛的思想进行选择排序的方法。首先对n个记录的关键字进行两两比较,然后在n/2原创 2013-07-30 11:39:25 · 3852 阅读 · 0 评论 -
数据结构排序系列详解之七 归并排序
在前面说的那几种排序都是将一组记录按关键字大小排成一个有序的序列,而归并排序的思想是:基于合并,将两个或两个以上有序表合并成一个新的有序表归并排序算法:假设初始序列含有n个记录,首先将这n个记录看成n个有序的子序列,每个子序列长度为1,然后两两归并,得到n/2个长度为2(n为奇数的时候,最后一个序列的长度为1)的有序子序列。在此基础上,再对长度为2的有序子序列进行亮亮归并,得到若干个长度为4的原创 2013-07-30 21:53:46 · 1422 阅读 · 0 评论 -
数据结构排序系列详解之三 冒泡排序
前面两篇博客讲述的排序算法都是基于插入类的排序,这篇文章开始介绍交换类的排序算法,即:冒泡排序、快速排序(冒泡排序的改进)。交换类的算法:通过交换逆序元素进行排序的方法。冒泡排序:反复扫描待排序记录序列,在扫描的过程中,顺次比较相邻的两个元素的大小,若逆序就交换位置。算法实现代码如下:package exp_sort;public class BubbleSort { pu原创 2013-07-26 16:26:05 · 892 阅读 · 0 评论 -
数据结构排序系列详解之一 插入排序
复习之余,就将数据结构中关于排序的这块知识点整理了一下,写下来是想与更多的人分享,最关键的是做一备份,为方便以后查阅。排序1、概念: 有n个记录的序列{R1,R2,.......,Rn}(此处注意:1,2,n 是下表序列,以下是相同的作用),其相应关键字的序列是{K1,K2,.........,Kn}。通过排序,要求找出当前下标序列1,2,......,n的一种排列p1,p2,原创 2013-07-26 13:14:13 · 1453 阅读 · 0 评论 -
数据结构排序系列详解之四 快速排序
交换类排序的另一个方法,即快速排序。快速排序:改变了冒泡排序中一次交换仅能消除一个逆序的局限性,是冒泡排序的一种改进;实现了一次交换可消除多个逆序。通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的所有数据都比另外一部分的所有数据都要小,然后再按此方法对这两部分数据分别进行快速排序,整个排序过程可以递归进行,以此达到整个数据变成有序序列。算法实现代码如下:package exp原创 2013-07-29 09:57:16 · 1144 阅读 · 0 评论 -
数据结构排序系列详解之五 简单选择排序
在前面的博客中已经讲述了交换类的排序算法,这节中开始说说选择类的排序算法了,首先来看一下选择排序的算法思想;选择排序的基本算法思想:每一趟在 n-i+1 (i=1,2,3,……,n-1)个记录中选取关键字最小的记录作为有序序列中第i个记录。简单选择排序:设所排序序列的记录个数为n。i取1,2,…,n-1,从所有n-i+1个记录(Ri,Ri+1,…,Rn)中找出排序码最小的记录,与第原创 2013-07-29 11:13:39 · 915 阅读 · 0 评论 -
数据结构之查找一静态查找
今天将数据结构的查找章节的知识点总结一下,以前在课堂上没有好好听,所以现在不得不将这些基础拿出来再预习—学习—复习,哎,苦逼的程序媛。。。。。下面进入正题。在非数值运算问题上,数据存数量一般很大,为了在大量数据中找到某些值,需要用到查找技术,为了提高查找效率,需要对一些数据进行排序。查找和排序的数据处理量几乎占到总处理量的80%以上,所以查找和排序的有效性直接影响到基本算法的有效性,因而查找和排序原创 2013-08-08 11:38:27 · 1400 阅读 · 1 评论 -
数据结构排序系列详解之九 桶排序
基本思想:假定输入是由一个随机过程产生的[0, M)区间上均匀分布的实数。将区间[0, M)划分为n个大小相等的子区间(桶),将n个输入元素分配到这些桶中,对桶中元素进行排序,然后依次连接桶输入0 ≤A[1..n] [桶——关键字]映射函数bindex=f(key) 其中,bindex 为桶数组B的下标(即第bindex个桶), k为待排序列的关键字。桶排序之所原创 2013-08-16 11:05:50 · 3707 阅读 · 6 评论 -
编写一个模拟航空客运定票系统的程序
原文地址:编写一个模拟航空客运定票系统的程序作者:木木女实习报告题目:2.7 编写一个模拟航空客运定票系统的程序班级: 姓名: 学号:完成日期:一. 需求分析:1. 程序需要模拟航空客运订票系统所处理的业务包括:A航线查询 B客户预定机票C办理退票。2. 航线查询:i.系统里储存了每条航线信息包括:终点站名,航班号,飞机号,飞行星期,日期,乘员定额,余票量转载 2013-04-25 17:36:57 · 3737 阅读 · 1 评论 -
线性表的基本操作
原文链接顺序表—线性表的顺序实现删除多余元素#include#includeusing namespace std;struct node{ int n[100]; int length; int tag;}a;void init(){ int i; for(i=0;i<30;i++) { a.n[i]=ra转载 2013-05-09 17:54:56 · 770 阅读 · 0 评论 -
航空客运订票系统(c语言)
原文地址:航空客运订票系统(c语言)作者:半夏流鸢代码分享如下#include#include#include#include#define ERROR 0#define OK 1typedef struct aldbook{//已订票人结点 char albookname[20]; //订票人姓名 int albookno; //订票量 struct aldbook *n转载 2013-04-25 17:36:54 · 11489 阅读 · 5 评论 -
第二章 线性表习题
原文地址:线性表习题">第二章 线性表习题作者:tanzj一、填空题1、在顺序表中插入或删除一个元素,需要平均移动 元素,具体移动的元素个数与 有关。 2、向一个长度为n的向量的第i个元素(1≤i≤n+1)之前插入一个元素时,需向后移动 个元素。3、一个长度为n的向量中删除第i个元素(1≤i≤n)时,需向前移动 个元素。4、在顺序表转载 2013-04-25 17:35:09 · 2072 阅读 · 1 评论 -
第五章 数组和广义表练习题
原文地址:数组和广义表练习题">第五章 数组和广义表练习题作者:tanzj1、设有二维数组A(m*n),其中每个元素占w个存储单元,第一个元素a[1][1]的起始地址为L,则以列主序方式存储a[i][j]的存储单元地址是__________.2、C语言是按行主序方式顺序存储数组,设有定义inta[3][2][2][3];要求列出其所有数组元素在内存中的存储次序.3、试编写算法,将数组in转载 2013-04-25 17:35:15 · 3197 阅读 · 0 评论 -
第六章 树和二叉树(二)
原文地址:第六章 树和二叉树(二)作者:tanzj41、分别画出具有3个结点的树和3个结点二叉树的所有不同形态.42、一个深度为L的满K叉树有如下性质:第L层上的结点是叶子结点,其余各层上每个结点都有K棵非空子树,如果按层次顺序从1开始对全部结点编号,问:(1) 各层的结点的数目是多少?(2) 编号为n的结点的双亲结点(若存在)编号是多少?(3) 编号为n的结点的第i个孩子(若存在)转载 2013-04-25 17:35:19 · 3098 阅读 · 0 评论 -
第七章 图练习题(一)
原文地址:第七章 图练习题(一)作者:tanzj1、有n个顶点的无向完全图具有( )条边.A、n(n+1)/2 B、n-1 C、n D、n(n-1)2、有向图中一个顶点i的出度等于其邻接矩阵中第i列的非零元素的个数( )3、有向图中一个顶点i的入度等于其邻接矩阵中第i列的非零元素的个数( )4、一个具有n个顶点的连通有向图至多转载 2013-04-25 17:35:22 · 3602 阅读 · 0 评论 -
第九章 查找练习题
原文地址:第九章 查找练习题作者:tanzj1、在对有二十个数据有序表作二分查找时有___________个结点的查找长度是4.2、用折半查找法的查找速度比用顺序查找法的查找速度_________. A 必然慢 B必然快 C速度相等 D 快慢不定3、写出从循环单链表中查找出最大值的算法.4、写出从循环单链表中查找出最小值的算法 .5、适合折半转载 2013-04-25 17:35:26 · 9138 阅读 · 0 评论 -
第十章 排序练习题
原文地址:第十章 排序练习题作者:tanzj1、大多数排序算法都有两个基本的操作: 和 。2、在对一组记录(54,38,96,23,15,72,60,45,83)进行直接插入排序时,当把第7个记录60插入到有序表时,为寻找插入位置至少需比较 次。3、在插入和选择排序中,若初始数据基本正序,则选用转载 2013-04-25 17:35:28 · 4414 阅读 · 1 评论 -
第十二章 文件练习题
原文地址:第十二章 文件练习题作者:tanzj1、若索引文件采用稠密索引,则每个索引项与主文件中的______记录相对应,若索引文件采用稀疏索引,则每个索引项与主文件中的_______记录相对应.2、文件的检索和修改有两种方式______和______3、对顺序文件的检索方法可以是( )A、 顺序存取 B、随机存取C、按关键字存取 D、前三种方法都可以4、文件按记录转载 2013-04-25 17:35:30 · 1027 阅读 · 0 评论 -
数据结构-校园导游咨询系统…
原文地址:数据结构-校园导游咨询系统(c语言版)作者:陶陶//本程序最好在VC++中运行,但这是C程序,在TC中,显示结果会出现乱码,TC不支持汉字#include "string.h"#include "stdio.h"#include "malloc.h"#include "stdlib.h"#define Max 20000#define NUM 9typedef struct转载 2013-04-25 17:36:50 · 4332 阅读 · 0 评论 -
第一章 绪论习题
原文地址:绪论习题">第一章 绪论习题作者:tanzj一、填空题1、数据结构是一门研究非数值计算的程序设计问题中计算机的 以及它们之间的_________和运算等的学科。2、数据结构被形式地定义为(D,R),其中D是 的有限集合,R是D上的 有限集合。3、数据结构包括数据的 数据的 和数据转载 2013-04-25 17:35:05 · 1326 阅读 · 0 评论 -
第二章 线性表参考答案
原文地址:线性表参考答案">第二章 线性表参考答案作者:tanzj一、填空题:1、表中一半 表长和该元素在表中的位置 2、n-i+1 3、n-i4、O(1) 随机存取 5、必定 不一定6、其直接前驱结点的链域的值7、前驱结点的地址 O(n) 8、有限、一对一二、判断题1、链表的每个结点中都恰好包含一个指针。(X ) 2、链表的物理存储结构具转载 2013-04-25 17:35:11 · 1670 阅读 · 0 评论 -
第六章 树和二叉树(一)
原文地址:第六章 树和二叉树(一)作者:tanzj1、 深度为6的完全二叉树至多有___个结点,至少有___个结点。2、 二叉树的子树有___之分,次序___任意颠倒。3、已知完全二叉树有28个结点,则整个二叉树有( )个度为1的结点。 A、 0; B、 1; C、 2; D、 不确定4、树的度是指树转载 2013-04-25 17:35:17 · 1891 阅读 · 0 评论 -
第七章 图练习题(二)
原文地址:第七章 图练习题(二)作者:tanzj41、任何一个无向连通图的最小生成树( )A、只有一棵 B、一棵或多棵 C、一定有多棵 D、可能不存在42、图有 、 等存储结构,遍历图有 、 等方法。43、有向图G用邻接表矩阵存储,其第i行的所有元素之和等于顶点i的 。44、转载 2013-04-25 17:35:24 · 5336 阅读 · 1 评论 -
第四章 串练习题
原文地址:串练习题">第四章 串练习题作者:tanzj1、已知S="(syz)*" T="(s+z)*y"试利用联接(strcat(s1,s2),求子串(substr(s,i,j)和置换replace(s1,i,j.s2)等基本运算将S转换为T.2、空白串即为空串。( )3、两个串相等的条件为( )A、 长度相等 B、对应位置上的字符相同. C、A和B转载 2013-04-25 17:35:32 · 1765 阅读 · 0 评论 -
数据结构排序系列详解之八 堆排序
在上一节中,介绍了树形选择排序,这一节中说说对树形选择排序的改进算法,即堆排序算法。堆排序弥补了属性选择排序算法占用空间多的缺憾原创 2013-08-16 10:16:54 · 1242 阅读 · 0 评论