GIS算法——01,复杂度

算法是什么

算法是指完成一个任务所需要的具体步骤和方法。

复杂性

算法的复杂性主要包括时间和空间两个方面。

问题的规模

指的是输入数据量的尺度,如图的节点数和边数。

时间复杂度

1,不关心具体时间的原因:
方便多种算法之间比较,需要相对时间
不拘泥于具体的语言
技术独立,无论科技如何进步,复杂性不变
实际主要关心大规模数据的输入

随着问题规模的扩大,低阶项影响变小可以忽略,使用渐进运行时间表示。如n阶 log n阶

2,同阶的两个算法的比较:
两个运行时间的比值,分析这个常量
3,元运算
以一个时间常量为上界,不管输入和执行的算法运算步骤。如加法、减法。

空间复杂度

1,空间复杂度不包括输入的数据空间,仅为算法所需的工作空间

2,空间复杂度无法超过时间复杂度,因为每写入一个数据,都需要时间。

3,算法中大部分情况是空间复杂度不如时间复杂度重要
实际运算中,增加空间不会明显加快算法速度,但是减少空间会导致算法变慢。只要空间合理,时间比空间珍贵。
大多数已有的最优算法,空间复杂度在O(n)内。

4,最优算法
求解问题花费的时间,在下界。

算法评估

1,运行时间
我们可以通过多个角度评估
迭代次数
基本运算的频度
递推公式

2,最坏情况
对于最坏情况,大部分我们只能证明算法有一个上界,而能否达到这个上届却不知道。即使我们知道一个算法的无限多个值用的时间达到了上界,也不能说算法在最坏情况的运行时间就是上界。

3,输入规模
图灵机作为模型,以非空单元测算算法的输入的大小。
在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

燕南路GISer

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值