数据结构学习笔记002什么是时间复杂度

基本概念

时间复杂度:计算机解决问题的时间,随着问题规模的扩大,运行时间上的变化规律(或者说:时间是怎么变化)。通常状况下,时间复杂度都是指算法运行时间的最坏状况。web

补充

时间复杂度通常用大写的O来表示,后面用小括号包裹时间变化规律。好比:
一、访问数组某个位置的值,其时间复杂度为O(1)。算法

解析:由于,数组能够经过下标直接定位到数据原素,不管数值的长度是多少(即:问题规模的扩大),都可以经过下标直接访问获得。因此,其时间复杂度为:O(1),呈固定的常数变化。数组

二、访问链表某个位置的值,其时间复杂度为O(n)。ide

解析:首先,若是访问链表的第一个值,那么时间复杂度为O(1),但咱们评论时间复杂度,通常是指最坏状况下的时间复杂度,因此,随着问题规模的扩大,若是想访问链表最后一个位置的值,那么时间复杂度就是O(n)。因此,访问链表某个位置的值,其时间复杂度为O(n)。svg

常见的时间复杂度表示有:O(1)、O(n)、O(n2)、O(3)、O(logn)。xml

参考文献:三分钟了解时间复杂度get

至此,完毕。it