数据结构--基础知识

一、基本术语

数据元素:组成数据的、有一定意义的基本单位

数据项:一个数据元素可以由若干个数据项组成。是数据不可分割的最小单位

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

数据结构:不同数据元素之间的关系

二、数据结构

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

集合结构:没有关系

线性结构:一对一

树形结构:一对多

图形结构:多对多

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

顺序存储结构:存储关系和逻辑关系一致

链式存储结构:存储关系和逻辑关系不一致

三、数据类型

原子类型:不可再分解的基本类型

结构类型:由若干个类型组合而成,可以再分解



四、算法:解决特定问题求解步骤的描述

1.算法的五个基本特性

输入、输出、有穷性、确定性、可行性

2.算法设计的要求

正确性、可读性、健壮性、时间效率高和存储量低

3.算法效率的度量方法

事后统计法、事前分析估算方法

4.算法的时间复杂度------大O记法

推导大O阶

1.用常数1取代运行时间中的所有加法常数

2.在修改后的运行次数函数中,只保留最高阶项

3.如果最高阶项存在且其系数不是1,则去除与这个项相乘的系数

得到的结果就是大O阶

5.算法的空间复杂度

五、参考

程杰 大话数据结构

相关推荐
im_AMBER5 分钟前
Leetcode 102 反转链表
数据结构·c++·学习·算法·leetcode·链表
Xの哲學39 分钟前
深入剖析Linux文件系统数据结构实现机制
linux·运维·网络·数据结构·算法
C雨后彩虹1 小时前
竖直四子棋
java·数据结构·算法·华为·面试
荒诞硬汉2 小时前
对象数组.
java·数据结构
散峰而望2 小时前
【算法竞赛】栈和 stack
开发语言·数据结构·c++·算法·leetcode·github·推荐算法
wen__xvn3 小时前
代码随想录算法训练营DAY13第六章 二叉树part01
数据结构
木子02043 小时前
Java8集合list.parallelStream() 和 list.stream() 区别
数据结构·list
Z1Jxxx4 小时前
0和1的个数
数据结构·c++·算法
ldccorpora4 小时前
Chinese News Translation Text Part 1数据集介绍,官网编号LDC2005T06
数据结构·人工智能·python·算法·语音识别