数据结构第二章总结

    顺序表存储位置是相邻连续的,可以随即访问的一种数据结构,顺序表在使用前必须指定其长度,一旦分配内存,则在使用中不可以动态的更改。所以,其优点是访问数据是比较方便,可以随即访问表中的任何一个数据,缺点是定义的长度不可更改造成存储空间的浪费。 

    链表是通过指针来描述元素关系的一种数据结构,可以是物理地址不连续的物理空间。其优点是:对于数组,可以动态的改变数据的长度,分配物理空间;缺点是不能随即访问链表元素,必须从表头开始,一步一步搜索元素。 

    建议:如果一个数组在使用中,查询比较多,而插入,删除数据比较少,数组的长度不变时,选顺序表比较合理。如果插入,删除,长度不定的数组,可以选链表。 

原文地址:https://www.cnblogs.com/lxwkitty/p/10566792.html

时间: 2024-08-01 18:03:40

数据结构第二章总结的相关文章

数据结构第二章小结

第二章主要学习的是线性表,其中包含了顺序表以及链表,顺序表有两种结构体定义,一种是指针,再申请相应数组空间,一种是直接定义数组,前者数组为堆空间,后者则为栈空间,如果数组长度过大,得考虑空间是否充足问题,因而前者适用性更好: 链表主要为单链表,循环链表,双向链表:主要涉及到删除.查找.插入等操作,在学习链表过程中,主要问题是没能充分理解语句的意思,在插入语句中,类似p=s(p为辅助指针.s为指向新结点的指针)总是理解为这一步就插入成功了,插入应该是通过辅助指针来改变所指向的结点的数据域,这样才是

数据结构第二章

如果存在正常数c和n0使得当N>=n0时,T(N)<=c*f(N),则记为T(N) = O(f(N)).   小于等于 读作:大O 如果存在正常数c 和n0 使得当N>=n0,T(N) >= c*f(N),则记为T(N) = Ω((f(N))  大于等于 读作:omega T(N) = Θ(h(N)) 当且仅当T(N)= O(h(N))且T(N) = Ω(h(N)) 等于 读作:theta 如果T(N)=O(p(N))且T(N) != Θ(h(N)) ,则T(N) = o(p(N)

数据结构第二章实验

1)使用Debug,用E命令和A命令以两种方式将指令写入内存 机器码        汇编指令 b8 20 4e    mov ax,4e20h 05 16 14    add ax,1416h bb 00 20    mov bx,2000h 01 d8         add  ax,bx 89 c3         mov bx,ax 01 d8         add  ax,bx b8 1a 00    mov ax,001ah bb 26 00    mov bx,0026h 00 d

数据结构——第二章树和森林:04哈夫曼树与哈夫曼编码

1.结点的路径长度:从根结点到该结点的路径上分支的数目. 2.树的路径长度:树中每个结点的路径长度之和. 3.树的带权路径长度:树中所有叶子结点的带权路径长度之和WPL(T) = ∑wklk(对所有叶子结点) 4.最优树:在所有含n个结点,并带相同权值的m叉树中,必存在一棵其带权路径长度取最小值的树,称为最优树. 5.哈夫曼算法构造最优树:以二叉树为例: (1)根据给定的n个权值{w1, w2, ... , wn}构造n棵二叉树的集合F = {T1, T2, ... ,Tn},其中每棵二叉树中均

【数据结构】第二章小结

ps:第一次用博客园写,记录第一次 一.数据结构第二章主要为:顺序表和链表的构造及其增删查改的一些基本操作,以及粗略计算它们的时间or空间的复杂度. 1.顺序表: (1)  特点:逻辑结构上相邻,物理存储上也是相邻的,属于随机存储: (2)  优点:便于使用下标进行查找,例如:查找某数组的第6项的数据是几: 存储密度为1: (3)    缺点:由于其物理存储相邻,故无法将空间中零零散散的碎片空间利用起来: 2.链表: (1)   特点:逻辑结构上相邻,物理存储上不一定相邻的,属于顺序存储: 单链

第二章学习小结

数据结构第二章的学习结束了,了解了顺序表,单链表的建立,插入,删除,查找的算法,以及对它们时间复杂度,空间复杂度的分析.学会区分头指针,头结点和首元结点. 前插法,后插法创建单链表,相比之下,我觉得后插法比较好理解.双向链表就是那个表示被处理结点的前驱的后继(p->prior->next),结点的后继的前驱(p->next->prior)要区分开. 作业,说实话,一开始的时候,我真的很懵,书上的算法描述,我可以看的很明白,同时也感到很奇怪,甚至还一度认为那是可以敲上电脑进行编译运行

数据结构期末复习第二章线性表

第二章:线性表 1.线性结构的基本特征答:线性结构是若干数据元素构成的有序(次序)集① 集合中必存在唯一的一个“第一元素”:② 集合中必存在唯一的一个 “最后元素”:③ 除第一元素之外,均有 唯一的前驱:④ 除最后元素之外,均有 唯一的后继. 2.线性表的顺序存储结构和链式存储结构分别是______.(  D )   A. 顺序存取的存储结构.顺序存取的存储结构  B. 顺序存取的存储结构.随机存取的存储结构   C. 随机存取的存储结构.随机存取的存储结构  D. 随机存取的存储结构.顺序存取

数据结构——线性表(第二章)

一.基本概念 1.线性表:简称表,是n(n>=0)个具有相同类型的数据元素的有限序列,线性表中数据元素的个数称为线性表的长度.长度为零时称为空表. 2.线性表的顺序存储结构称为顺序表. 3.单链表:单链表是一组任意的存储单元存放线性表的位置,这组存储单元可以连续也可以不连续,甚至可以零散分布在内存中的任意位置. 下面着重介绍有关单链表的操作: #include<iostream> using namespace std; const int maxsize = 10; // 定义单链表的

0526.第二章:时间复杂度和空间复杂度[数据结构]

参考:本文为小甲鱼教学视频的学习笔记. 1.为什么要学习时间复杂度和空间复杂度?你说一个算法好另外一个算法不好,有什么判断依据?哪个算法效率高?怎么判断?那么就要学习时间和空间复杂度了. 思考:学习每一个知识之前都应该要考虑一下为什么要学习,学了有什么用处,什么场景下去用. 2.算法的效率高一般是指算法的执行时间,度量一个算法的执行时间有2种方式: 事后统计法:需要编写测试程序,万一不好花费大量的时间精力,赔了娘子又折兵(并且测试环境不同差别不是一般的大) 事前统计法:程序编写前,使用统计方法对