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

第一章 算法概述

算法的性质

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

算法的时间复杂度

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的不断增大,上面时间复杂度的值也不断增大,算法的执行效率越来越低。

第二章 递归与分治策略

相关推荐
khalil1020几秒前
代码随想录算法训练营Day-49 图论01 | 图论理论基础、深搜理论基础、98. 所有可达路径、广搜理论基础
c++·算法·leetcode·深度优先·图论
Chase_______10 分钟前
【算法】删除子数组的最大得分 & 最多 K 个重复元素的最长子数组——不定长滑动窗口与哈希频率约束
算法·哈希算法
fie888921 分钟前
城市环境下车辆目标跟踪算法 MATLAB 实现
算法·matlab·目标跟踪
tryCbest23 分钟前
软考 - 排序算法
算法·排序算法
AKA__Zas35 分钟前
芝士算法(双指针篇 1.0)
java·算法·学习方法
吃着火锅x唱着歌37 分钟前
LeetCode 726.原子的数量
linux·算法·leetcode
君义_noip39 分钟前
CSP-S 2025 提高级 第一轮(初赛) 阅读程序(3)
c++·算法·信息学奥赛·csp-s 初赛
玛卡巴卡ldf39 分钟前
【LeetCode 手撕算法】(栈)有效括号、最小栈、字符串解码、每日温度、柱状图最大矩形
java·数据结构·算法·leetcode·力扣
程序员卷卷狗42 分钟前
Claude Code工作原理学习笔记:从Agent Loop到工具调用
chrome·笔记·学习
happyprince44 分钟前
05-FlagEmbedding 评估模块详解
算法