小黑算法

作者:

在

  • 什么是算法

在计算机领域里,==算法是一系列程序指令==,用于处理特定的运算和逻辑 问题。 衡量算法优劣的主要标准是时间复杂度和空间复杂度。

  • 什么是数据结构

数据结构是数据的组织、管理和存储格式,其使用目的是为了高效地访 问和修改数据。 数据结构包含数组、链表这样的线性数据结构,也包含树、图这样的复 杂数据结构。

  • 什么是时间复杂度

时间复杂度是对一个算法运行时间长短的量度,用大O表示,记作 T(n)=O(f(n))。 常见的时间复杂度按照从低到高的顺序,包括O(1)、O(logn)、O(n)、 O(nlogn)、O(n 2 )等。

  • 什么是空间复杂度

空间复杂度是对一个算法在运行过程中临时占用存储空间大小的量度, 用大O表示,记作S(n)=O(f(n))。 常见的空间复杂度按照从低到高的顺序,包括O(1)、O(n)、O(n 2 )等。 其中递归算法的空间复杂度和递归深度成正比.

小结 什么是数组 数组是由有限个相同类型的变量所组成的有序集合,它的物理存储方式 是顺序存储,访问方式是随机访问。利用下标查找数组元素的时间复杂 度是O(1),中间插入、删除数组元素的时间复杂度是O(n)。 什么是链表 链表是一种链式数据结构,由若干节点组成,每个节点包含指向下一节 点的指针。链表的物理存储方式是随机存储,访问方式是顺序访问。查 找链表节点的时间复杂度是O(n),中间插入、删除节点的时间复杂度是 O(1)。 什么是栈 栈是一种线性逻辑结构,可以用数组实现,也可以用链表实现。栈包含 入栈和出栈操作,遵循先入后出的原则(FILO)。 什么是队列 队列也是一种线性逻辑结构,可以用数组实现,也可以用链表实现。队 列包含入队和出队操作,遵循先入先出的原则(FIFO)。