zoukankan      html  css  js  c++  java
  • 绪论

    1.数据结构中的基本概念

      数据:信息的载体,能被输入到计算机中并被计算机程序识别和处理的符号的集合

      数据元素:数据的基本单位,由若干个数据项组成,可以把数据元素比作数据库的某张表中的一行,如某一条学生记录

      数据对象:具有相同性质的数据元素的集合,可以比作数据库中的一张表

      数据类型:  一个值的集合和定义在改集合上的一组操作的总称

        原子类型:值不可再分的数据类型

        结构类型:值可以分为若干其他的数据类型

        抽象数据类型:指一个数学模型以及定义在此数学模型上的一组操作。它通常是对数据的某种抽象,定义了数据的取值范围及其结构形式,以及对数据操作的集合。

      数据结构:相互之间存在特定关系的数据元素的集合,包含

        逻辑结构

        存储结构

        数据的运算

      算法的设计取决于所选定的逻辑结构,而算法的实现依赖存储结构

    2.数据结构的三要素

      逻辑结构:数据元素之间的逻辑关系

        线性结构

          线性表:数组、链表、广义表

          操作受限的线性表:栈、队列

        非线性结构

          集合

          树形结构

          图

      存储结构:表示的是数据如何在计算机中被表示出来

        顺序存储:逻辑上相邻的元素存在一段物理位置相邻的存储单元中

        链式存储:逻辑上相邻的元素在物理上不相邻,用指针把相邻元素联系起来

        索引存储:当数据元素比较大时,可以采用索引存储,索引是指用指针来指示数据元素,而指针中只保留数据元素的关键信息和位置,这样使得检索速率大大提高

        散列存储(Hash存储):一种用存储空间换取查找效率的存储方式,基本思想史通过一个函数,计算所给定的关键值得到数据的物理位置

      数据的运算:

        定义在数据集上的一组操作的定义和实现,定义是针对逻辑结构而言的,即数据集支持哪些操作,而实现是针对存储结构而言的,即应该怎么实现这些操作

    3.算法和算法评价

      算法的特性:

        有穷性:一个算法总是在执行有限步骤之后结束

        确定性:无二义性

        可行性:可以被实现

        输入:一个算法可以有0个或多个输入

        输出:一个算法只要有一个输出

      时间复杂度:执行算法所需时间的量级同数据规模之间的关系

      空间复杂度:执行算法所需的空间的量级同数据规模之间的关系

      *算法原地工作:指的是算法工作所需要的存储空间同问题规模没有关系,是一个常数

        

      

  • 相关阅读:
    01 WEB白帽子Python入门
    07 SSRF漏洞
    JAVA基础学习day04--IDEA、方法
    一些常用的计算机快捷指令
    记录一次xss平台的安装
    upload-labs
    蓝队防护基础
    bagecms的代码审计
    window入侵排查基本
    常用端口总结
  • 原文地址:https://www.cnblogs.com/foodie-nils/p/13956046.html
Copyright © 2011-2022 走看看