zoukankan      html  css  js  c++  java
  • 数据结构和算法

    一 . 概念

    1. 数据结构

      概念:

        这是一门专门处理数据的学科,数据元素之间的关联称为结构,描述的是存储和组织数据的方式。

    2. 数据

      对客观事物的符号表示,指所有能输入到计算机中并被计算机程序处理的符号的总称。

    3. 数据项

      数据项是数据的不可分割的最小单位。(譬如每个表中字段都是一个数据项)

    4. 数据元素

      数据的基本单位,在计算机中作为一个整体进行考虑和处理。一个数据元素由多个数据项组成。(数据库表中的每一条数据就表示一个数据元素)

    5. 数据对象

      性质相同的数据元素的集合,是数据的一个子集。

      这里记住集合这个概念,所有的用户组合在一起是数据对象,所有的女性用户也是一组数据对象。

      

    二 . 数据结构和数据类型

      通常数据结构有四种结构:

      1、集合

      2、线性结构

      3、树形结构

      4、图(网)状结构

      

      上面说的都是数据的逻辑关系,数据结构中的物理结构(存储结构)有两种:

      1、顺序存储结构

      2、链式存储结构

      下面在介绍一个概念

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

        注意: 这个概念中说的,不只包含值的集合,还包涵对值集的操作。

        数据类型又分为两类:

          1、 原子类型:

              值不可再分。比如java中的int 、 char、 String等。

          2、 结构类型:

              由若干成分按某种结构组成,可以被分解。比如一个整型数组,可以循环分割成多个整型元素。

     

    三 、算法和算法分析

       算法是对特定问题求解步骤的一种描述,说白了就是我们通过解决问题的程序代码,就可以说是算法。

      算法有以下5个特征:

        1、 有穷性: 算法必须在执行有限个步骤之后终止。

        2、确定性: 算法的每一步骤必须有确切的定义,相同的输入只能得出相同的输出。

        3、可行性: 或者叫有效性,每个计算步骤都可以在有限时间内完成。 

        4、输入: 一个算法有零个或者多个输入。

        5、输出: 一个算法有一个或者多个输出。

      

      好的算法的评判标准:

        1、正确性:满足祖逖问题的需求。

        2、可读性:容易被人理解。

        3、健壮性:对输入的非法数据,能偶适当的进行处理。

        4、效率与低存储量需求:尽量使算法的执行时间越短,运行时占用的空间更小。

      算法效率的度量:

        1、事后统计的方法:对运行结果进行统计分析,得出执行效率。

        2、事前分析估算:估算算法的时间复杂度。

            算法时间复杂度是一个函数,它定性描述了该算法的运行时间。这是一个关于代表算法输入值的字符串的长度的算法。

          一般我们最常用的办法是讨论算法在最坏情况下的时间复杂度。

  • 相关阅读:
    并查集
    强联通分量,缩点
    最短路径
    最小生成树
    拓扑排序
    图的遍历
    图论基础知识
    数据库四种隔离级别
    MySQL 索引 乐观锁 悲观锁
    MYSQL+正则
  • 原文地址:https://www.cnblogs.com/jcjc/p/10636606.html
Copyright © 2011-2022 走看看