`
wang7839186
  • 浏览: 42042 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

数据结构学习第二天

 
阅读更多

继续昨天的知识,学习线性表的删除算法。

1、删除算法的思路:

(1)如果删除位置不合法,抛出异常

(2)取出删除元素

(3)从删除位置开始,元素逐一向前移动一个位置

(3)表长减1

 

我们可以得出线性表的顺序存储机构读数据的时间复杂度是O(1),而插入和删除的时间复杂度都是O(n)。

 

顺序存储结构的优缺点:

优点:

(1)无须为表中元素之间的逻辑关系而增加额外的存储空间

(2)可以快速的存取表中任意一个元素

缺点:

(1)插入和删除需要移动大量元素

(2)当线性表长度变化较大时,难以确定存储空间的容量

(3)造成存储空间的浪费(因为可能需要动态扩容)

 

2、线性表的链式存储结构

为了表示每个数据元素与其后继元素之间的逻辑关系,对于数据元素来说,除了存储本身的信息之外,还需要存储一个指示其直接后继的信息(即直接后继的存储位置),我们把这两个位置分别称为数据域和指针域,这两部分组成了数据元素的存储映像,称为节点。

 

对于线性表,我们把链表中的第一个节点的存储位置叫做头指针,最后一个节点指针为null。

为了方便,在单链表的第一个结点前设置一个结点,称为头结点,其数据域可以不存储任何信息,指针域指向第一个结点的存储位置。

 

结点由存放数据元素的数据域,存放后继结点地址的指针域组成。

 

p->data=a,p->next.data=a1;

0
2
分享到:
评论
3 楼 longfor5 2012-12-20  
wang7839186 写道
longfor5 写道
请问楼主学习的教材是什么?能给个连接吗

在网上找的pdf,《大话数据结构》,比起其他教材可能比较有意思一点

非常感谢
2 楼 wang7839186 2012-12-20  
longfor5 写道
请问楼主学习的教材是什么?能给个连接吗

在网上找的pdf,《大话数据结构》,比起其他教材可能比较有意思一点
1 楼 longfor5 2012-12-20  
请问楼主学习的教材是什么?能给个连接吗

相关推荐

    数据结构考研题库(清华,严蔚敏版)

    1. **绪论**:第二章的绪论部分通常会涉及数据结构的基本概念,如数据、数据元素、数据结构的定义、数据结构的分类(逻辑结构与物理结构)、抽象数据类型(ADT)及其与数据结构的关系。理解这些基础知识,有助于后续...

    Android 学习第二天

    在“Android 学习第二天”,你可能已经接触了如何创建一个新的Android项目,包括设置项目结构、编写HelloWorld程序等。 1. 创建HelloWorld项目:这是每个Android开发者的第一步。在Android Studio中,通过选择...

    数据结构算法

    团队沟通利器之UML——活动图 wcf系列(5)wcf系列学习5天速成——第五天 服务托管 wcf系列学习5天速成——第四天 wcf之分布式架构 wcf系列学习5天速成——第三天 事务的使用 wcf系列5天速成——第二天 binding的使用...

    Java数据结构与算法15天笔记.zip

    这些文件涵盖了Java数据结构与算法的核心主题,是学习和复习的重要资源。让我们逐一解析每个文件名,探索其中可能涵盖的知识点: 1. **day02 链表.md** - 链表是数据结构的基础,它不依赖于内存位置连续存储元素。...

    数据结构 备考方案 考研 计算机

    2. **9月中旬至10月中旬**:该阶段的重点是复习《数据结构高分笔记》中的算法题目,特别是第一次复习时标记出来的难点。如果有必要,可以根据最新大纲的要求,借助严版《数据结构》补充完善笔记中遗漏的知识点。同时...

    西安交大数据结构真题资料

    在准备考研特别是目标为西安交通大学的软件工程专业的学生,数据结构是不可或缺的一门专业课程。西安交大的数据结构考研真题资料,提供了重要的历年试题及解答,有助于考生更好地理解和掌握数据结构的知识点,为考研...

    Java数据结构和算法中文第二版

    《Java数据结构和算法中文第二版》是一本深入浅出介绍数据结构与算法在Java语言中的应用的专业书籍。作者罗伯特·拉福尔(Robert Lafore)以其轻松幽默的语言风格,将复杂的概念通过直观的例子呈现出来,使得读者...

    兰州理工大学数据结构课设

    第二天,猴子又吃了剩下桃子的一半,再留一个;如此类推,直到某一天,猴子发现桃子不够吃,只剩下一个。我们需找出猴子最初摘了多少个桃子。通过分析,可以得出数学模型:第n天猴子剩下的桃子数ni-1等于前一天桃子...

    严蔚敏:数据结构题集(C语言版)

    其内容和章节编排与1992年4月出版的《数据结构》(第二版)基本一致,但在本书中更突出了抽象数据类型的概念。全书采用类C语言作为数据结构和算法的描述语言。本书概念表述严谨,逻辑推理严密,语言精炼,用词达意。并有...

    计算机数据结构十日谈

    第二天:树与图 树是一种非线性的数据结构,由节点和边组成,每个节点可以有零个或多个子节点。二叉树、平衡树(如AVL树和红黑树)和堆(如最大堆和最小堆)都是树的变种,它们在搜索、排序和优先级队列等场景中有着...

    数据结构实验报告停车场管理

    第二部分涉及第6章至第11章的内容,可能涉及到更复杂的数据结构操作和算法实现。学生可以选择提供的实验项目或自拟实验内容,确保覆盖上述章节的知识点。 二、工具与准备 实验前,学生需要掌握C语言编程基础,以及...

    JavaSE第二天学习

    JavaSE第二天的学习主要关注程序流程控制结构,这是编程语言中非常基础且重要的概念。程序流程控制结构主要包括三种类型:顺序结构、选择结构和循环结构。 1. **顺序结构**是最简单的一种程序执行方式,它按照代码...

    数据结构(C++)有关练习题

    31 习题9 排序------------------------------------------------------------------------------------34 第1部分 C++基本知识 各种数据结构以及相应算法的描述总是要选用一种语言工具。在计算机科学...

    数据结构学习-队列/栈

    ### 数据结构学习——队列与栈 #### 一、队列的基本概念 队列是一种特殊的线性表,只允许在表的一端进行插入操作,在另一端进行删除操作。这种操作方式使得队列遵循先进先出(FIFO, First In First Out)的原则。...

    数据结构与算法分析——C语言描述(Weiss著)的学习笔记

    第二遍,照样通读本书,重点在于解决课后习题,我发现本书的课后习题绝对能让你学会思考并解决问题,提高你的问题解决能力与算法设计能力; 第三遍,复习巩固,注重你的算法设计能力,不能给你一个问题,你去设计十...

    运动会分数统计系统数据结构课程设计论文

    ### 运动会分数统计系统数据结构课程设计论文 #### 一、课程设计目的 本课程设计旨在培养学生将书本知识应用于解决实际问题的能力。通过实际动手操作,增强学生的编程能力和解决问题的能力。此外,该设计还着重于...

    数据结构实验报告-银行系统

    【实验目的】 1. 本实验旨在通过模拟银行系统中的客户流动...总之,该实验通过模拟银行系统,让学生在实践中学习和巩固数据结构(如链表和队列)、离散事件模拟以及C语言编程技巧,提高他们分析问题和解决问题的能力。

    前端学习第二天-20161030

    ### 前端学习第二天-20161030 #### HTML文档结构 **一、Meta标签用法** 1. **设置网页关键字(用于SEO)** ```html 页面的关键字"> ``` - **作用**:此标签用于定义网页的关键字,对搜索引擎优化(SEO)十分...

    易语言源码十天学会易语言第二天.rar

    "易语言源码十天学会易语言第二天.rar" 是一个压缩包文件,其中包含了帮助学习者在十天内掌握易语言的第二天学习内容。这个压缩包很可能是由一系列教程、源代码示例和练习组成,旨在帮助用户逐步理解和运用易语言的...

Global site tag (gtag.js) - Google Analytics