自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

李洲谊

数据结构学习ing...

  • 博客(16)
  • 收藏
  • 关注

原创 数据结构6.4文件

文件的基本概念定义文件(file)是由大量性质相同的记录组成的集合。文件的数据量通常很大,被放置在外存储器上。分类一:按其记录类型的不同分为如下两类:1.操作系统的文件:是一维的无结构、无结束的连续字符序列2.数据库文件:是带有结构的记录的集合,每条记录由一个或多个数据项组成。记录是文件中存取的基本单位,数据项是文件中可使用的数据的最小单位。二:按记录长度是否相同分为如下两类:1....

2019-01-19 15:07:52 1361

原创 数据结构6.3外部排序

外存储器一般来说计算机存储设备分为主存储器和辅助存储器。主存储器通常指随机存取存储器(RAM),辅助存储器指磁盘(包括磁盘和软盘)和磁带这样的设备。磁盘属于随机存取设备,磁带则属于顺序存储设备。磁盘存储器磁盘是一种直接存取的存储设备(DASD),访问存储在磁盘文件中任何一条记录所花费的时间几乎相同。磁盘实际上是一个扁平的圆盘,在盘面上有许多称为磁道的圆圈,信息就记录在磁道上。由于磁道的圆圈为...

2019-01-19 12:41:36 445

原创 数据结构6.2内部排序

排序假设含n个记录的序列为{R1,R2,…,Rn}其对应的关键字序列为{K1,K2,…,Kn}这些关键字的排列方式有多种,其中至少有一种排列方式能使得关键字之间存在着这样一个关系:Kp1 <= Kp2 <= … <= Kpn按此关系将记录序列重新排列为{Rp1,Rp2,…,Rpn}即为有序记录,将这一过程称为排序。排序方法的稳定性若在一个记录序列中Ki ==...

2019-01-18 20:05:25 239

原创 数据结构6.1查找

查找的基本概念查找表由类型相同的数据元素(或记录)所组成的集合。查找表中每个记录由若干数据项组成。若表中总有一个或几个属性能够唯一地确定一条记录,则称这个属性(或属性组合)为关键字。查找在含有若干记录的查找表中找出关键字值与给定值相同的记录。若查找成功,返回所找到的记录的信息或返回所找到的记录在表中的位置;否则查找失败,返回空记录或空指针。查找表的基本操作1.查找某个特定的数据元素是否...

2019-01-18 17:03:07 147

原创 数据结构5.2图的存储与遍历

图的存储

2019-01-18 11:49:33 184

原创 数据结构5.1图

定义图(graph)是n(n>=0)个元素的有限集。可以表示成二元组的形式,即:Graph = (V,E)V是图中数据元素的集合,通常称为顶点集;E是数据元素之间关系的集合,通常称为边集。数据元素用顶点表示,数据元素之间的关系用边(无方向)或弧(有方向)表示。其中,边用不带方向的无序偶(x,y)表示,即(x,y)等价于(y,x);弧用带方向的有序偶<x,y>表示,x为弧尾...

2019-01-17 19:55:03 560

原创 数据结构4.2赫夫曼树

赫夫曼树定义赫夫曼树又称最优树,是一类带权路径长度最短的树结点之间的路径:从一个结点到另一个结点所经过的结点序列结点之间的路径长度:结点之间的路径上的分支(边)数树的路径长度:从根结点到每个结点的路径长度之和结点的带权路径长度:该结点的权值(w)乘以该结点到根结点的路径长度(l)树的带权路径长度:树中所有叶子结点的带权路径之和赫夫曼树:树的带权路径长度最小的二叉树构造赫夫曼树...

2019-01-17 18:27:07 199

原创 数据结构4.1树

定义和基本术语树(tree):是n(n>=0)个结点的有限集。在任意一颗非空树中:有且只有一个称为根(root) 的结点。其余的结点被分为m(m>=0)个互不相交的有限集,其中每个集合本身又是一棵树,称为根结点的子树(sub_tree)。树的表示法:有图示法、集合表示法、广义表表示法和缩进表示法。图示法表示的二叉树中,边的数目(或称分枝数,用e表示)恰好比结点数目(用n表示)少一个...

2019-01-17 14:36:22 676

原创 数据结构3.2线性表的推广——广义表

广义表的定义广义表的数据元素本身也可以是一个数据结构,但与数组不同,广义表的不同元素可以有不同的结构。广义表是n个元素a1,a2,a3,…,an的有限序列,其中ai或者是原子项,或者是一个广义表。一般记为:LS = (a1,a2,a3,…,an)LS为广义表的名字,n为广义表的长度,若n为0,称为空表。若ai是原子型的数据元素,则称它为LS的原子;若ai是广义表,则它称为LS的子表。称第一个...

2019-01-17 08:50:27 534

原创 数据结构3.1线性表的推广——数组

数组(array)定义数组可看成一种特殊的线性表,其数据元素本身也是一个线性表。假设一个二维数组A(m*n)有m行n列,那么可以把这个二维数组看成一个线性表:A = (a0,a1…am-1)其中,每个元素ai是一个行向量组成的线性表:ai = (ai 0,ai 1…ai n-1) (0<=i<=m-1)也可以看作是一个由列向量组成的元素组成的线性表。那么以此类推,一个n维数...

2019-01-16 16:37:33 2621

原创 缓冲区溢出攻击

概念:缓冲区——程序用来保存用户输入数据、程序临时数据的内存空间,本质为数组。缓冲区溢出攻击——攻击者利用程序漏洞,将自己的攻击代码植入有缓冲区溢出漏洞的程序执行体中,改变该程序的执行过程,来获取目标系统的控制权。如果用户输入的数据长度超出了程序为其分配的内存空间,这些溢出的数据就会覆盖程序为其他数据分配的内存空间,形成缓冲区溢出。通过缓冲区溢出攻击,一个用户可在匿名或拥有一般权限用户的情况...

2019-01-15 11:15:12 6857 1

原创 数据结构2.2串的模式匹配

子串在主串中的定位操作称为串的模式匹配,记为index(s,t,pos),即在主串s中,从第pos个字符开始查找与子串t第一次相等的位置。若查找成功,则返回子串t的第一个字符在主串中的位序,否则返回0。其中主串称为目标串,子串称为模式串...

2019-01-14 15:41:49 529

原创 数据结构2.1栈、队列和串

特殊线性表栈、队列和串是三种特殊的线性表。其中,栈和队列是操作受限制的线性表,串是数据类型受限制的线性表。栈(stack)栈的定义栈是一种特殊的线性表,只允许在一端进行插入和删除操作。允许插入和删除的一端称为栈顶,另一端称为栈底。处于栈顶位置的元素称为栈顶元素。栈中含有元素的个数称为栈长,含有0个数据元素的栈称为空栈。其特点为后进先出或先进后出,因此栈又称为后进先出的线性表。习惯上,把栈...

2019-01-14 11:29:57 816

原创 数据结构1.3线性表的相关设计实现

要求设A和B是两个非递减的顺序表。编写算法,把A和B中都存在的元素组成新的由大到小排列的顺序表C,并分析算法的时间复杂度。实现如下#include <stdio.h>#include <stdlib.h>#define MAXSIZE 10typedef struct node{ int *data; int length; int li...

2019-01-13 20:54:03 275

原创 数据结构1.2双链表循环链表以及静态链表

双链表循环链表静态链表

2019-01-13 19:14:56 152

原创 数据结构1.1线性表与单链表

线性表定义:由零个或多个数据元素组成的有限序列记为:L=(a1,a2…an)———— L->线性表的名称 n->线性表的长度 n=0->空表地址计算方法:LOC(ai)=LOC(a1)+(i-1)*c 其中c为元素类型占用的存储单元线

2019-01-13 13:36:14 406

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除