计算机算法

DeeLMind大约 2 分钟

计算机算法

DeeLMind 提示

算法是无穷的,数学是根本的

计算机算法是指一系列用于解决问题或执行任务的明确步骤和规则。算法通常是由计算机科学家和程序员设计的,旨在高效地执行任务、解决问题或者优化性能。算法在计算机科学中占据着核心地位,涵盖了从数据处理到图形渲染、机器学习等各个方面。

https://deelmind.com/program/alg/open in new window

算法类型

  • 贪婪算法
  • 递归算法
  • 动态规划
  • ......

什么是数据结构

数据结构是计算机存储、组织数据的方式。

数据结构类型

  • 堆栈(Stack)
  • 队列(Queue)
  • 数组(Array)
  • 链表(Linked List)
  • 树(Tree)
  • 图(Graph)
  • 堆积(Heap)
  • 散列表(Hash table)

编程语言

什么编程语言都可,主要看你擅长什么,具体算法数据结构理论上不依附于编程语言,但实际编写,的确会用到语言特性,所以具体情况具体看。

算法&数据结构

算法是解决问题的思路,逻辑思考的过程;而数据结构是数据存储的方式。其实数据怎么存储也是一个问题,解决这个问题的过程就也是所谓的算法,所以通常情况算法数据结构常常一起出现,多学习慢慢就明白了。

学习方法

时间复杂度

时间复杂度指输入数据大小为N时,算法运行所需花费的时间。

O(1)<O(logN)<O(N)<O(NlogN)<O(N2)<O(2N)<O(N!)

空间复杂度

  • 输入空间: 存储输入数据所需的空间大小;
  • 暂存空间: 算法运行过程中,存储所有中间变量和对象等数据所需的空间大小;
  • 输出空间: 算法运行返回时,存储输出数据所需的空间大小;

O(1)<O(logN)<O(N)<O(N2)<O(2N)

上次编辑于:
贡献者: DeeLMind