【算法】算法设计与分析 课程笔记 第一章&第二章

第一章 算法概述

算法的性质

算法的四个性质:输入、输出、确定性和有穷性

算法的时间复杂度

1. 常见的时间复杂度

  1. 常数阶 O(1)

  2. 对数阶 O(log n)

  3. 线性阶 O(n)

  4. 线性对数阶 O(nlog n)

  5. 平方阶 O(n^2)

  6. 立方阶 O(n^3)

  7. k 次方阶 O(n^k)

  8. 指数阶 O(2^n)

注:上面的 log n 均代表以2为底的对数。

2. 时间复杂度排序

常见的算法时间复杂度由小到大依次为:

Ο(1)<Ο(log n)<Ο(n)<Ο(nlog n)<Ο(n^2)<Ο(n^3)< Ο(n^k) < Ο(2^n)

随着问题规模n的不断增大,上面时间复杂度的值也不断增大,算法的执行效率越来越低。

第二章 递归与分治策略

相关推荐
im_AMBER3 分钟前
Leetcode 139 最后一个单词的长度 | 找出字符串中第一个匹配项的下标
开发语言·算法·leetcode
Frostnova丶4 分钟前
(6)LeetCode.42 接雨水
数据结构·算法·leetcode
像污秽一样5 分钟前
算法设计与分析-习题4.4
数据结构·算法·排序算法·深度优先
x_xbx8 分钟前
LeetCode:102. 二叉树的层序遍历
算法·leetcode
2401_8898846611 分钟前
嵌入式C++测试框架
开发语言·c++·算法
1104.北光c°11 分钟前
我理解的Leaf号段模式:美团分布式ID生成系统
java·开发语言·笔记·分布式·github·leaf
月明长歌20 分钟前
【码道初阶-Hot100】LeetCode 128. 最长连续序列:从排序双指针扫描到 HashSet,一文讲透为什么 O(n) 解法要用哈希
算法·leetcode·哈希算法
Z9fish25 分钟前
C语言算法专题总结(一)排序
c语言·算法·排序算法
美式请加冰33 分钟前
模拟的介绍和使用
java·开发语言·算法
云泽80838 分钟前
蓝桥杯算法精讲:贪心算法之区间问题深度剖析
算法·贪心算法·蓝桥杯