`
魔花曼陀罗
  • 浏览: 11576 次
最近访客 更多访客>>
社区版块
存档分类
最新评论

关于数据结构的一点理解1

 
阅读更多

                      关于数据结构的理解

数据结构?这是个啥东西?感觉自己对一些定义很不敏感,学习新东西,总是要按自己的方式理解了,才能记得住。这是病,得治吧。嘿嘿,言归正传,在网上查了一下,也特意借了本数据结构的书,原来我学过的链表啊,队列啊,数组啊都是属于数据结构的,还有我不熟悉的栈、串也属于数据结构,当然,最近在研究哈弗曼,故而这也属于数据结构啦!

 

 说说数据结构吧,它是指相互之间具有一定联系的数据元素的集合。它包括数据的逻辑结构、存储结构、以及数据的操作。用我的理解就是数据结构就是讲数据怎么存储和使用,还有各种数据之间的关系。在信息量巨大的今天,压缩技术是必不可少的,压缩方法分为无损压缩和有损压缩。无损压缩的原理是统计被压缩数据中重复数据的出现次数来进行编码,这个可以用统计10亿个数字中重复的数字及次数来练习一下。无损压缩解压后确保数据不失真,压缩比例在2:1~5:1之间,很适合文本图像的压缩,但不适合实时处理图像、视频和音频数据。还是讲讲最近研究的哈弗曼吧!哈弗曼编码是一种变长的编码方案,字符的编码根据使用的次数不同,或者说是使用频率不同而长短不一,使用频率较高的字符,其编码较短,使用频率较低的字符其编码较长,这样使所有字符的编码总长度最短,采用哈弗曼编码压缩后 ,数据信息并不丢失,所以说哈弗曼编码是一种无损压缩。哈弗曼编码的过程,实际上是建立了一个二叉树,称为哈弗曼树。获得哈弗曼编码的过程也就是建立哈弗曼树的过程。从另一个角度讲,哈弗曼树是带权外路径长度最短的二叉树,也就是最优二叉树。构造哈弗曼树时,使权值越大的节点越靠近根节点,这样构造的二叉树,它的带权外路径长度最小,那么需要占用的内存也相应会小,这才是重点。最后再解释一下什么是带权外路径吧:在字符的使用概率各不相同的情况下,将字符的使用概率作为二叉树中叶子节点的值,称为权,从跟到X结点的带权路径长度是X结点的权值与从根到X结点路径长度的乘积。所有叶子结点的带权路径长度之和称为二叉树的带权外路径长度。以后再详细介绍数据结构吧,觉得这个数据结构有很多东西呀,现在介绍的连皮毛都不算。

复制去Google翻译翻译结果
 
分享到:
评论

相关推荐

    数据结构PPT及一点习题

    总的来说,这份“数据结构PPT及一点习题”资源提供了一个全面学习和练习数据结构的机会,无论是对于初学者还是进阶者,都能从中受益匪浅。通过系统学习和练习,你将能够更好地掌握数据结构,为编写高效、优化的代码...

    南昌大学数据结构期末试卷

    南昌大学的数据结构课程显然非常重视对学生这方面的培养,这一点从提供的压缩包文件中可以明显看出。这个压缩包包含了四份重要的资料,分别是“数据结构A卷答案.doc”、“数据结构试卷C.doc”、“数据结构A卷.doc”...

    数据结构一点通透

    "数据结构一点通透"这个主题旨在帮助学习者深入理解和掌握数据结构的基本原理和应用。 1. **数组**:数据结构的基础,它是一系列相同类型元素的集合,通过索引进行访问。数组的优点是访问速度快,缺点是插入和删除...

    数据结构的一点总结数据结构的一点总结

    这种数据结构平均查找时间复杂度可达到O(1)。 ### 应用场景 数据结构的应用非常广泛,几乎涵盖了计算机科学的所有领域: - **操作系统**:利用各种数据结构来管理进程、内存等系统资源。 - **数据库管理系统**:...

    数据结构期末考试

    数据结构期末考试知识点总结 本文总结了「数据结构期末...本文总结了「数据结构期末考试」的知识点,涵盖了复变函数、积分变换、傅立叶变换和LaPlace 变换等多个方面的内容,旨在帮助读者更好地理解和掌握这些知识点。

    数据结构第五版源码

    对于学习者来说,这是一份宝贵的实践资料,可以帮助深入理解各种数据结构的工作原理和应用。 首先,我们来讨论数据结构的基本概念。数据结构是指在计算机中存储、组织数据的方式。常见的数据结构有数组、链表、栈、...

    数据结构与算法经典习题

    通过对上述经典习题的解析,我们可以看到数据结构与算法的核心在于理解和运用时间复杂度的概念,以及根据不同问题设计出高效的算法。这些基础概念和技能是学习高级编程技术和解决复杂问题的关键所在。

    数据结构-绪论.ppt

    课程的另一个重点是抽象数据类型(ADT),它提供了一种对数据结构的高层次描述,使得我们可以在不关注具体实现的情况下,理解数据结构的功能。ADT包括数据对象、相关操作以及操作行为的规范。这种方法论的引入,有助...

    “数据结构”课堂教学与学生创新思维培养.pdf

    这一点,对于学生理解和应用数据结构至关重要。 文章强调了“数据结构”课程的目的,即不仅要培养学生的数据抽象能力和算法设计能力,更要培养学生在学习过程中的创造思维能力。而实现这一目标的方法包括采用启发式...

    哈尔滨工程大学数据结构ppt

    1. **第1章**:通常会介绍数据结构的基本概念,包括什么是数据、数据元素、数据结构的定义以及分类(如线性结构、非线性结构),同时可能会涉及抽象数据类型(ADT)的概念。 2. **第2章**:很可能是关于线性结构的...

    c#描述数据结构和算法

    - **第1章**:数据结构与算法的基本概念,包括算法效率分析、复杂度计算等基础知识。 - **第2章至第6章**:详细介绍各种常用数据结构,包括它们的定义、特性、操作方法以及实际应用场景。 - **第7章**:排序算法,...

    数据结构中有关多维数组的课程设计

    在数据结构的学习中,多维数组是一个至关重要的概念,它为理解和处理复杂的数据组织提供了基础。多维数组,顾名思义,是数组的一种扩展形式,可以看作是由多个一维数组按照特定规则排列而成的结构。在本课程设计中,...

    《数据结构》课程习题集

    这些习题覆盖了数据结构的基本概念和操作,是理解和掌握数据结构的关键。通过解答这些问题,可以深化对数据结构的理解,提高分析和解决问题的能力。在实际编程和系统设计中,合理选择和应用合适的数据结构能够显著...

    Java数据结构与算法书中源码

    在IT领域,尤其是在软件开发中,理解和掌握数据结构与算法是至关重要的。这些技术构成了程序设计的基础,影响着代码的效率、可维护性和性能。针对提供的文件列表,我们可以深入探讨以下几个Java数据结构与算法的知识...

    校园导航系统-数据结构.doc

    《校园导航系统》的数据结构设计涉及了图论和算法的核心概念,主要...整个设计涵盖了数据结构和算法的基础知识,通过实际应用加深了对这些概念的理解。在实现过程中,不仅锻炼了编程技能,还培养了解决实际问题的能力。

    数据结构实践平台的架构与应用.pdf

    1. 数据结构的发展历程:从PASCAL到C语言再到C++语言的演变,以及面向过程向面向对象编程方法的转变。 2. 实践教学的重要性:强调了动手实践能力的培养,与理论知识相结合,通过实验加深理解。 3. 教材建设的作用:...

    数据结构c语言版实验及源代码.pdf

    标题“数据结构C语言版实验及源代码.pdf”暗示了文档内容是关于数据结构的实验练习,而这些练习是使用C语言完成的。在描述中进一步明确了这一点,说明文件包含了实验内容和源代码。由于文档内容是关于数据结构的实验...

Global site tag (gtag.js) - Google Analytics