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

第一章 算法概述

算法的性质

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

算法的时间复杂度

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

第二章 递归与分治策略

相关推荐
星恒随风26 分钟前
C++ STL 详解:list 的使用、迭代器失效、模拟实现与 vector 对比
开发语言·数据结构·c++·笔记·学习·list
退休倒计时28 分钟前
【每日一题】LeetCode 131. 分割回文串 TypeScript
算法·leetcode·typescript
小白说大模型29 分钟前
AI Agent 调试实战:链路追踪、Prompt 可视化与异常定位的系统方法
java·人工智能·python·算法·prompt
梅梅绵绵冰38 分钟前
算法题-矩阵
数据结构·算法·矩阵
atunet1 小时前
关于从哈希冲突看缓存设计的实践与权衡7
算法
一起努力啊~1 小时前
DataWhale组队学习笔记--llm-algo-leetcode(五)
笔记·学习·llm
是上好佳佳佳呀2 小时前
【机器学习|DAY03】K近邻算法(KNN)笔记
笔记·机器学习·近邻算法
GuWenyue10 小时前
传统Agent工具两大痛点!300行代码落地MCP跨语言工具,彻底解耦LLM与工具
前端·人工智能·算法
我叫洋洋11 小时前
C ++ [ hello world ]
c语言·c++·算法
圣光SG12 小时前
Servlet学习笔记
笔记·学习·servlet