数据结构基础知识点总结

1.数据就是指能够被计算机识别、存储和加工处理的信息的载体。

2.数据元素是数据的基本单位,可以由若干个数据项组成。

3.数据项是具有独立含义的最小标识单位。

4.数据结构的定义:

(1)逻辑结构:从逻辑结构上描述数据,独立于计算机。

(2)线性结构:一对一关系。 ·线性结构:多对多关系。

(3)存储结构:是逻辑结构用计算机语言的实现。

(4)顺序存储结构:如数组。

(5)链式存储结构:如链表。

(6)索引存储结构:

稠密索引:每个结点都有索引项。

稀疏索引:每组结点都有索引项。

(7)散列存储结构:如散列表。

5.数据运算。

对数据的操作。定义在逻辑结构上,每种逻辑结构都有一个运算集合。

常用的有:检索、插入、删除、更新、排序。

6.数据类型:是一个值的集合以及在这些值上定义的一组操作的总称。

7.结构类型:由用户借助于描述机制定义,是导出类型。

抽象数据类型ADT:是抽象数据的组织和与之的操作。相当于在概念层上描述问题。         优点是将数据和操作封装在一起实现了信息隐藏。

8.程序设计的实质是对实际问题选择一种好的数据结构,设计一个好的算法。算法取决于数据结构。 算法是一个良定义的计算过程,以一个或多个值输入,并以一个或多个值输出。   评价算法的好坏的素:算法是正确的,执行算法的时间, 执行算法的存储空间(主要是辅助存储空间),算法易于理解、编码、调试。

9.时间复杂度:是某个算法的时间耗费,它是该算法所求解问题规模n的函数。  渐近时间复杂度:是指当问题规模趋向无穷大时,该算法时间复杂度的数量级。   评价一个算法的时间性能时,主要标准就是算法的渐近时间复杂度。   算法中语句的频度不仅与问题规模有关,还与输入实例中各元素的取值相关。

10.时间复杂度按数量级递增排列依次为:常数阶O(1)、对数阶O(log2n)、线性阶O(n)、线性对数阶O(nlog2n)、平方阶O(n^2)、立方阶O(n^3)、……k次方阶O(n^k)、指数阶O(2^n)。   空间复杂度:是某个算法的空间耗费,它是该算法所求解问题规模n的函数

11.算法的时间复杂度和空间复杂度合称算法复杂度

时间: 2024-12-05 14:12:38

数据结构基础知识点总结的相关文章

数据结构【基础知识点总结】

数据结构[基础知识点总结] 一.数据 数据(Data)是信息的载体,它能够被计算机识别.存储和加工处理.它是计算机程序加工的原料,应用程序处理各种各样的数据. 计算机科学中,所谓数据就是计算机加工处理的对象,它可以是数值数据,也可以是非数值数据.数值数据是一些整数.实数或复数,主要用于工程计算.科学计算和商务处理等: 非数值数据包括字符.文字.图形.图像.语音等. 二.数据元素 数据元素(Data Element)是数据的基本单位.在不同的条件下,数据元素又可称为元素.结点.顶点.记录等.例如,

C# .Net基础知识点解答

C# .Net基础知识点解答 1. 什么是.NET?什么是CLI?什么是CLR?IL是什么?JIT是什么,它是如何工作的?GC是什么,简述一下GC的工作方式? 通俗的讲,.Net是微软开发应用程序的一个平台: CLI是Common Language Infrastructure,是公共语言架构: CLR是Common Language Runtime,即公共语言运行时: IL是.Net编译器产生的中间代码,称为通用中间语言CIL(Common Intermediate Language),CIL

数据结构基础总结

数据的逻辑结构 数据的存储结构 单链表是递归结构 迭代是指从当前元素获得集合中的后继元素. 迭代功能由Tterable可迭代接口和Tterator迭代器接口实现. 栈和队列 是两种特殊的线性表,特殊之处在于插入和删除操作的位置受到限制. 栈:插入和删除只允许在线性表的一端进行,后进先出. 队列:插入和删除分别在线性表的两端进行,先进先出. 数组: 1.数组是随机存取结构,这是数组最大的优点. 2.数组一旦占用一片存储空间,这片存储空间的地址和长度就确定的,不能更改,因此数组只能进行赋值.取值两种

黑马程序员——Java I/O流基础知识点(File类)

File工具 File类就是用俩将文件或者文件夹封装对象,弥补流对象的不足--流只能操作数据,不能操作文件夹的 封装的是路径!!! 构造方法演示 1.可以将已有的未出现的文件或者文件夹封装成对象. File f1=new File("c:\\abc\\a.txt"): File f2=new File("d:\\abc","ab.txt"打印,会打印路径.:目录分隔符,为了更好地跨平台File. File类常见功能 1,创建 createNewF

HTML5基础知识点

今天了解html,下面是我分享的有关html的基础知识点: ①什么是html? html是一种超文本标记语言(超文本标记标签) ②html标签是html中的最基本单位 也是最重要的部分,html标签分为单标签和双标签. 单标签</>   双标签<></> html中的一些常见标签 1,<br/>换行标签    2,<hr/>水平分割线标签   3,<p></p>段落标签     4,<pre></pre&

js基础知识点收集

js基础知识点收集 js常用基本类型 function show(x) { console.log(typeof(x)); // undefined console.log(typeof(10)); // number console.log(typeof('abc')); // string console.log(typeof(true)); // boolean console.log(typeof([])); // object console.log(typeof(function (

js基础知识点总结

js基础知识点总结 如何在一个网站或者一个页面,去书写你的js代码:1.js的分层(功能):jquery(tool) 组件(ui) 应用(app),mvc(backboneJs)2.js的规划():避免全局变量和方法(命名空间,闭包,面向对象),模块化(seaJs,requireJs) 常用内部类:Data Array Math String HTML属性,CSS属性HTML:属性.HTML属性="值":CSS:对象.style.CSS属性="值"; class和f

中国大学MOOC-陈越、何钦铭-数据结构基础习题集 03-1. 二分法求多项式单根

03-1. 二分法求多项式单根(20) 时间限制 400 ms 内存限制 65536 kB 代码长度限制 8000 B 判题程序 Standard 作者 杨起帆(浙江大学城市学院) 二分法求函数根的原理为:如果连续函数f(x)在区间[a, b]的两个端点取值异号,即f(a)f(b)<0,则它在这个区间内至少存在1个根r,即f(r)=0. 二分法的步骤为: 检查区间长度,如果小于给定阈值,则停止,输出区间中点(a+b)/2:否则 如果f(a)f(b)<0,则计算中点的值f((a+b)/2): 如

JavaScript语言基础知识点图示

原文:JavaScript语言基础知识点图示 一位牛人归纳的JavaScript 语言基础知识点图示. 1.JavaScript 数据类型 2.JavaScript 变量 3.Javascript 运算符 4.JavaScript 数组 5.JavaScript 流程控制 6.JavaScript 函数基础 7.DOM 基本操作 8.Window 对象 9.JavaScript 字符串函数 10.正则表达式 JavaScript语言基础知识点图示,布布扣,bubuko.com