数据结构和算法_零基础入门01
- 一、数据结构是什么?
-
- 逻辑结构、物理结构
- 二、算法
-
- 算法的五个基本特征
- 算法设计的要求
程序设计=数据结构+算法
一、数据结构是什么?
数据结构:研究非数值计算的程序设计问题中的操作对象,以及他们之间的关系和操作等问题的学科。
数据结构,即:数据元素间的一种或多种的特定关系的集合。
逻辑结构、物理结构
数据结构分为逻辑结构和物理结构。
逻辑结构:数据对象中数据元素间的相互关系。
1.1 集合结构:数据元素同属一个集合。
1.2 线性结构:数据元素间是一对一的关系。
1.3 树形结构:数据元素一对多的层次关系。
1.4 图形结构:数据元素多对多的关系。
物理结构:数据的逻辑结构在计算机中的存储形式。
数据的存储结构形式:顺序存储、链式存储。
顺序存储结构:数据元素放在地址连续的存储单元,数据间逻辑关系和物理关系是一致的。
链式存储结构:数据元素放在任意的存储单元,指针存放数据元素的地址。
二、算法
算法:解决特定问题的求解步骤描述;在计算机中表现为指令的有限序列(每个指令表示一个或多个操作)。
给定的问题有多种算法解决,不同算法有优劣之分。
算法的五个基本特征
输入、输出、又穷性、确定性、可行性。
1 输入:0或多个输入
2 输出:1或多个输出
3 有穷性:有限的步骤,自动结束。每步在可接受的时间内完成。
4 确定性:每步有确定的含义,无二义性。相同的输入有唯一的结果。
5 可行性:每步能在有限次数下完成。
算法设计的要求
1 正确性:
四个层次:
①算法程序无语法错误。
②对合法输入有满足要求的输出。
③对非法输入有相应的规格说明提醒。
④故意刁难的测试输入有满足要求的输出结果。
2 可读性
便于阅读、理解、交流。
3 健壮性
输入数据不合法时,也能相应的处理,不会奔溃。
4 时间效率高、存储量低