第一周总结

备赛进度总结第一周

这周的题目还没开始刷,准备先把知识巩固好了之后再去刷刷题目!
时间复杂度和空间复杂度
时间复杂度:算法的执行时间与算法的输入值之间的关系。
常见的时间复杂度:
O(1) O(N) O(N∧2) [俩个循环嵌套] O(log N) O(N log N) [俩个循环嵌套] O(M+N) [俩个循环并列]
对比:
O(1) < O(log N) < O(N) < O(N log N) < O(N∧2) O(2∧N) < O(N!)
空间复杂度:算法的存储空间与输入值之间的关系。
常见的空间复杂度:
O(1) O(N) O(N∧2) [O(log N) O(N log N)](后面俩种不太用得上)
若变量为常量则空间复杂度就是O(1)
递归一般都有O(N)的存储空间
对比:
O(1) < O(N) < O(N∧2)
但在一般的情况下,时间复杂度和空间复杂度只能二选一。有的时候可以用时间复杂度换空间复杂度,有的时候也可以用空间复杂度换时间复杂度。但在我们工作的时候,一般都会选择时间复杂度小为重。

数组Array
数组是指在连续的内存空间中,存储一组相同类型的元素。
元素是指数组中的数。
索引是指元素的相对位置,从0开始。
数组访问(Access)通过索引去访问元素,时间复杂度为O(1)
数组搜索(Search)找元素,时间复杂度为O(N)
数组插入(Insert)插入元素,时间复杂度为O(N)
数组删除(Delete)删除元素,时间复杂度为O(N)

目前重新理解了一下这些东西,发现和之前粗略的了解有一些不同,收货了满满的知识!

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值