数据结构和算法

一、数据结构入门

1.基本概念。

  数据项:最小的数据单位。原子性

  数据元素:数据的基本单位。

  数据对象:数据元素的集合。

2.数据结构类型。数据结构=逻辑结构+存储结构

 2.1数据的逻辑结构

     分类一:线性结构(线性表、栈、队列、数组)和非线性结构(树、图)。

     分类二:集合结构(确定性、唯一性、无序性)、线性结构(一对一)、树状结构(一对多)、网络结构(多对多)。

 2.2数据的存储结构

    顺序存储:数组。查询快,增删慢,需要移动元素。

    链式存储:逻辑上相邻,物理上不相邻,数据+指针。增删快,查询慢。

    索引存储:除建立存储节点信息外,还建立附加的索引表来标识节点的地址。

    散列存储:根据节点的关键字直接计算出该节点的存储地址。hash,查询、添加快。

 2.3 逻辑结构是唯一的,一种逻辑结构可以有多种存储结构实现。

     运算的实现依赖于存储结构。

二、算法和复杂度简介

1.算法:输入、输出、可行性、有穷性、确定性。

   评估算法的优劣:时间复杂度和空间复杂度。

2.时间复杂度:问题的规模

  时间频度

  时间复杂度:T(n) = O(f(n))。

  

3.空间复杂度

 S(n) = O(g(n))

三、线性表

1.

 

posted @ 2019-08-20 15:43  遇见神龙  阅读(217)  评论(0编辑  收藏  举报