zoukankan      html  css  js  c++  java
  • 数据结构—基础知识

    首先了解一下数据结构中的概念(仅仅为了对其有了感性认识)

    数据:描写叙述客观事物的符号,是计算机中可以操作的对象,可以被计算机识别,并输入给计算机处理的集合符号。

    数据不只包含数值。还包含视频、音频、图片等等

    数据元素:是组成数据的、具有一定意义的基本单位。在计算机中通常作为一个总体进行处理,也称为记录。

    数据项:一个数据元素由若干个个数据项组成。

    能够将数据元素理解我数据库中的一条记录,而数据项使其相应的属性。数据项是数据不可切割的最小单位。数据项是数据的最小单位。数据元素是数据结构中讨论的最小单位。

    数据对象:是性质同样数据元素的集合,是数据的子集。

    那么什么是数据结构呢?

    是相互之间存在一种或多种特定关系的集合。


    数据>数据对象>数据元素>数据项


    依照视点不同,能够将数据结构能够分为逻辑结构和物理结构

    逻辑结构:数据对象中数据元素之间的相互关系。

    逻辑结构|

                    |—集合结构:集合结构中,数据元素除了同属一个集合,没有其它关系

                    |—线性结构:线性结构中数据元素之间是一对一的关系

                    |—树结构:树结构之间的数据元素是一对多关系

                    |—图结构:图结构之间的数据元素是多对多的关系

    物理结构:数据的逻辑结构在计算机中的存储形式

    物理结构|

                    |—顺序存储结构:把数据元素存放到放到地址连续的存储单元中,其数据间的逻辑关系和物理关系一致。

                    |—链接存储结构:把数据元素存放在随意的存储单元里,这组存储单元能够是连续的。也能够是不连续的。


    抽象数据类型(Abstract Data Type)ADT

    数据类型:一组性质同样的值的集合及其定义在该集合上的一些操作。

    什么叫做抽象?

    抽取事物具有的普遍性的本质。抽取出问题的特征忽略非本质的细节。是对事物的一个概括。

    what is ADT?

    是指一个数学模型。及其定义在该模型上的操作。

    他包含数据及其对数据的操作。

    ADT 抽象数据类型名

    Data

            数据元素之间的逻辑关系的定义

    Operation

            操作1

                     初始化条件

                     操作结果描写叙述

            操作2

                     ......

            操作n

                     .......

    endADT

    抽象数据类型体现了:问题分解、抽象和信息隐藏。


    什么是算法?

    解决特定问题求解步骤的描写叙述。在计算机中表示为指令的有序序列,而且每一个指令表示一个或多个操作。

    算法的特性:输入输出、有穷性、确定性、可行性

    算法的度量—时间复杂度

    进行算法分析是,总的语句运行次数T(n)是关于n的函数。进而分析T(n)随n的变化情况并确定数量级。

    算法时间复杂度用O(f(n))表示,表示随着问题规模n的增大。算法运行时间的增长率和f(n)的增长率同样,所以称为算法的渐进时间复杂度,简称时间复杂度。

    求取算法时间复杂度:

    推到大O阶:

    1、用常数1代替执行时间中的全部加法常数

    2、改动后的执行次数函数中,仅仅保留最高阶项

    3、去除与这个最高项的相乘的常数

    经常使用的时间复杂度排序:

    O(1)<O(logn)<O(nlogn)<O(n2)【n的2次方】<O(n3)【n的三次方】<O(2n) 【2的n次方】<O(n!)<O(nn)【n的n次方】

    一般我们指的是最坏时间复杂度

  • 相关阅读:
    指定版本安装php(删除默认的php5.3,安装php5.6)
    20172305 2017-2018-2 《程序设计与数据结构》第三周学习总结
    20172305 2017-2018-2 《程序设计与数据结构》第二周学习总结
    20172305 2017-2018-2 《程序设计与数据结构》第一周学习总结
    寒假作业03
    寒假作业02
    寒假作业01
    20172301 2017-2018-2 《程序设计与数据结构》第三周学习总结
    20172301 2017-2018-2 《程序设计与数据结构》第二周学习总结
    20172301 2017-2018-2 《程序设计与数据结构》第一周学习总结
  • 原文地址:https://www.cnblogs.com/jhcelue/p/6752628.html
Copyright © 2011-2022 走看看