当前位置: 首页 > wzjs >正文

大型大型网站建设方案ppt百度推广联系方式

大型大型网站建设方案ppt,百度推广联系方式,济宁网站定制公司,东莞企业网站设计力扣提升第一天 题目链接:https://leetcode.cn/problems/design-memory-allocator/?envTypedaily-question&envId2025-02-25 一开始解题思路 暴力解决法 我奔着先从简单的写法做起,之后再想办法进行改进,心里已经预料到会出现超出时间…

力扣提升第一天

题目链接:https://leetcode.cn/problems/design-memory-allocator/?envType=daily-question&envId=2025-02-25

在这里插入图片描述

一开始解题思路

暴力解决法

我奔着先从简单的写法做起,之后再想办法进行改进,心里已经预料到会出现超出时间限制的报错。

class Allocator:def __init__(self, n: int):self.capacity = [0]*nself.size = ndef allocate(self, size: int, mID: int) -> int:cur = 0while cur + size <= self.size:#检查当前窗口内是否全部可用if all(self.capacity[cur+i]==0 for i in range(size)):for i in range(size):self.capacity[cur + i] = mIDreturn curelse:cur += 1return -1def freeMemory(self, mID: int) -> int:count = 0for i in range(self.size):if self.capacity[i] == mID:self.capacity[i] = 0count = count + 1return count

毫无疑问,一脚就被力扣踢死了,出现超时报错(┭┮﹏┭┮)。

开始改进

分析哪些地方最为繁重

  • 经过分析,主要集中在allocate函数中,循环太多浪费时间

尝试改进方案

  • 想不出来(doge
  • 查看官方题解(模拟),恍然大悟
class Allocator:def __init__(self, n: int):self.n = nself.memory = [0] * ndef allocate(self, size: int, mID: int) -> int:count = 0for i in range(self.n):if self.memory[i]:count = 0else:count += 1if count == size:for j in range(i - count + 1, i + 1):self.memory[j] = mIDreturn i - count + 1return -1def freeMemory(self, mID: int) -> int:count = 0for i in range(self.n):if self.memory[i] == mID:count += 1self.memory[i] = 0return count

复杂度分析

  • 我的写法:由于每次发现当前窗口不是0时都得重新开始遍历一遍size,所以时间复杂度是O(n*size),空间复杂度为O(1)
  • 官方写法:遍历一遍数组,发现满足size个空位才开始分配内容,所以时间复杂度是O(n),空间复杂度为O(1)

感悟

  • 哈哈哈,还是思考得不到位呢!((:з」∠),居然没想到这么简单的方法,揪着字典啥的方向去思考如何降低时间复杂度了。
  • 就这样吧,今天也算是打开完毕了。共勉,继续加油
http://www.dtcms.com/wzjs/246431.html

相关文章:

  • 湛江免费做网站长沙网站seo
  • win7记事本做网站小程序开发一个多少钱啊
  • 茶网站源码网店运营推广中级实训
  • 响应式网站建设准备品牌seo主要做什么
  • 网站网站制作服务网站推广app下载
  • 晋城网站建设费用泰州网站整站优化
  • 上海专业做网站推广的公司seo搜索引擎优化5
  • 网站模板免费下载代码seo关键词推广渠道
  • 上海专业网站建设费指定关键词seo报价
  • 用vs2010做免费网站模板下载公关公司的主要业务
  • 代做毕业设计的网站好推广公司产品
  • 同ip下网站产品怎么在网上推广
  • 北京公司建网站要多少费用宁德市教育局官网
  • 打开部分网站很慢策划书模板
  • b站广告投放平台入口推56论坛
  • 视频网站如何做手机如何建立网站
  • 做期货的网站登封网站设计
  • 对于网站界面google浏览器官方
  • 深圳网站建设公司官网云搜索app
  • 绿植租摆网站建设热门关键词
  • 网站开发论文研究方法百度站长联盟
  • 北京专业网站开发在百度上做广告推广要多少钱
  • 网站如何去分析做外贸怎么推广
  • 自己做的相册网站免费软文发布平台
  • 北京北京网站建设品牌广告
  • wordpress外网无css信息流优化师没经验可以做吗
  • 游戏公司做网站设计赚钱吗产品营销网站建设
  • 黄冈网站建设有哪些seo网站推广费用
  • 开发微信公众平台seo排名平台
  • 泰州网站建设推广独立站平台选哪个好