文章目录
前言
数据结构与算法是程序员的必修课。从这篇文章开始,我们就正式进入了数据结构与算法的学习。本篇文章介绍了几个算据结构的基本概念,让我们一起看一下。
1.算法效率与时间复杂度
数据结构:数据结构是计算机存储,组织数据的方式,指相互之间存在一种或多种特定关系的数组元素的集合
算法:算法就是一系列的计算步骤,用来将输入数据转化成输出结果
算法效率:
算法效率分析分为两种:第一种是时间效率,第二种是空间效率。时间效率被称为时间复杂度,而空间效率被称作空间复杂度。 时间复杂度主要衡量的是一个算法的运行速度,而空间复杂度主要衡量一个算法所需要的额外空间,在计算机发展的早期,计算机的存储容量很小。所以对空间复杂度很是在乎。但是经过计算机行业的迅速发展,计算机的存储容量已经达到了很高的程度。所以我们如今已经不需要再特别关注一个算法的空间复杂度。我们更关注算法的时间复杂度,也常使用以空间换时间的策略。
时间复杂度:
一个算法的运行时间和语句的执行次数成正比,且同一个算法在不同机器上的运行时间都不同,不好量化。所以令算法中的基本操作的执行次数,为算法的时间复杂度。
实际中我们计算时间复杂度时,我们其实并不一定要计算精确的执行次数ÿ