数据结构笔记整理(1)算法概述

本文是关于数据结构的笔记整理,重点讨论算法基础和时间复杂度。阐述了算法与程序的区别,强调了正确性、时间复杂性和空间复杂性等评价准则。通过实例解析了时间复杂度的概念,包括O、Ω、Θ表示法,并给出了一系列典型算法的时间复杂度分析,如O(n²)、O(logn)和O(nlogn)。同时,提到了均摊时间复杂度的概念及其在数据结构操作中的应用。
摘要由CSDN通过智能技术生成

本笔记整理为方便自行复习,若有他人需求亦可参考。

1.算法基础
(1)算法定义:由有限条指令构成,规定了解决特定问题的一系列操作。

(2)程序定义:程序是算法用某种程序设计语言的具体实现。

(3)区别:程序可以不满足算法的性质:有限性。

(4)算法的评价准则:正确性、时间复杂性、空间复杂性、可读性、健壮性。

2.时间复杂度及渐进表示法

(1)基本运算(关键运算)
算法中起主要作用且耗时最多的操作。

例:矩阵运算中的*与+;
排序算法中的比较;
数组插入/删除操作的赋值(移动)。

(2)时间复杂度
算法中基本运算的次数
问题规模的函数

渐进表示方法:随着规模的增长,算法执行时间T(n)的变化趋势。
O表示法、Ω表示法、Θ表示法。
O:上限
Ω:下限
Θ:上限和下限

例:
T(n)=3logn+loglogn,g(n)=logn
存在C=4,n0

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值