学习性能所必须的知识之算法

本文探讨了算法的重要性,提供学习算法的技巧,并通过复杂度分析评价算法性能。介绍了数组、链表、树、散列算法及队列、栈的特点和优缺点,强调它们在性能优化中的作用。
摘要由CSDN通过智能技术生成

什么是算法?

通过有效地缩小查找范围,只需要很少的次数就能很快速的找到需要的数字,这样的策略或方法就称为“算法”。
算法的好坏对性能有很大的影响。

学习算法的窍门
  • 掌握算法优点与缺陷,“折中”是一个很重要的思维
  • 通过在图上推演来思考
评价算法的指标
通过复杂度(Order)来评价算法
  • 什么是复杂度?
    O(n) : 会受数据量增加的影响,如 y=n, y=2n
    O(1) : 表示不会受到数据量增加的影响
    O(logn) :logn就是把n除以2多少次后会变为1
    三者之间的复杂度: O(1) < O(logn) < O(n)
    在这里插入图片描述
打个比方,查找最小值的情况下,如果要从分散的数据的一端开始搜索,就需要查询所有的数据。换句话说复杂度就是O(n)。
但若数据是按顺序排列的,
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

悠然的笔记本

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

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

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

打赏作者

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

抵扣说明:

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

余额充值