题目:原题链接(中等)

标签:堆、排序

解法 时间复杂度 空间复杂度 执行用时
Ans 1 (Python) O ( N l o g N ) O(NlogN) O(NlogN) O ( N ) O(N) O(N) 680ms (89.37%)
Ans 2 (Python)
Ans 3 (Python)

解法一:

import heapqclass Solution:def getOrder(self, original_tasks: List[List[int]]) -> List[int]:size = len(original_tasks)# 将下标值添加到任务中tasks = []for i in range(size):e, p = original_tasks[i]tasks.append((e, p, i))# 排序任务列表tasks.sort()waiting = []  # 等待执行的任务堆now = 0  # 当前时间:第1个任务出现的时间j = 0  # 下一个需要加入任务堆的任务下标ans = []while j < size:# 将之前已出现的任务添加到任务堆中while j < size and tasks[j][0] <= now:heapq.heappush(waiting, (tasks[j][1], tasks[j][2]))j += 1# 处理当前时间结点已没有任务的情况if not waiting:now = tasks[j][0]heapq.heappush(waiting, (tasks[j][1], tasks[j][2]))j += 1# 将相同时间点的任务添加到任务堆中while j < size and tasks[j][0] <= now:heapq.heappush(waiting, (tasks[j][1], tasks[j][2]))j += 1# 处理需要优先处理的任务p, i = heapq.heappop(waiting)now += pans.append(i)# 处理积压的任务while waiting:p, i = heapq.heappop(waiting)ans.append(i)return ans

LeetCode题解(1834):单线程CPU(Python)相关推荐

  1. LeetCode——1834. 单线程 CPU(Single-Threaded CPU)[中等]——分析及代码(Java)

    LeetCode--1834. 单线程 CPU[Single-Threaded CPU][中等]--分析及代码[Java] 一.题目 二.分析及代码 1. 优先队列 (1)思路 (2)代码 (3)结果 ...

  2. LeetCode 1834. 单线程 CPU(排序 + 优先队列)

    文章目录 1. 题目 2. 解题 1. 题目 给你一个二维数组 tasks ,用于表示 n​​​​​​ 项从 0 到 n - 1 编号的任务. 其中 tasks[i] = [enqueueTimei, ...

  3. 【C++】LeetCode 题库 1834. 单线程 CPU

    原题链接 问题描述 给你一个二维数组 tasks ,用于表示 n​​​​​​ 项从 0 到 n - 1 编号的任务.其中 tasks[i] = [enqueueTimei, processingTim ...

  4. 1834 单线程 CPU(lambda表达式排序 + 优先队列)

    1. 问题描述: 给你一个二维数组 tasks ,用于表示 n​​​​​​ 项从 0 到 n - 1 编号的任务.其中 tasks[i] = [enqueueTimei, processingTime ...

  5. 【算法题】1834. 单线程 CPU

    插: 前些天发现了一个巨牛的人工智能学习网站,通俗易懂,风趣幽默,忍不住分享一下给大家.点击跳转到网站. 坚持不懈,越努力越幸运,大家一起学习鸭~~~ 题目: 给你一个二维数组 tasks ,用于表示 ...

  6. 1834 单线程 CPU

    题目描述: 给你一个二维数组 tasks ,用于表示 n​​​​​​ 项从 0 到 n - 1 编号的任务.其中 tasks[i] = [enqueueTimei, processingTimei] ...

  7. Leetcode 1834. Single-Threaded CPU [Python]

    使用heap.把task按照进队列时间,持续时间,和原始的index组成新的三元组然后排序,设置一个时间T,记录当前的时间,设置一个队列,就是已经入队列的cpu待处理的任务,当tasks里的任务的时间 ...

  8. LeetCode题解(1079):活字印刷(Python)

    题目:原题链接(中等) 标签:回溯算法 解法 时间复杂度 空间复杂度 执行用时 Ans 1 (Python) O(N!)O(N!)O(N!) O(N!)O(N!)O(N!) 136ms (43.48% ...

  9. LeetCode 319. Bulb Switcher--C++,java,python 1行解法--数学题

    LeetCode 319. Bulb Switcher–C++,java,python 1行解法 LeetCode题解专栏:LeetCode题解 LeetCode 所有题目总结:LeetCode 所有 ...

最新文章

  1. 记一次订单号的重复事故
  2. java 向上取整_java 中的异常处理和常用类使用
  3. 百度数据可视化图表套件echart实战
  4. CentOS 7下安装Python3.6.4
  5. Linux记录-TCP状态以及(TIME_WAIT/CLOSE_WAIT)分析(转载)
  6. 技术员联盟win11旗舰版64位系统v2021.07
  7. 网站图片全自动加密_外卖优惠平台内容加密参数分析!你见过一块钱买外卖的吗?...
  8. jquery 获取和设置 select下拉框的值
  9. 乘坐飞机时,有什么事情是机长和机上工作人员不想让乘客知道的?
  10. 服务器装win10系统,win10服务器系统
  11. 企业信息化规划的重要性
  12. 迷你上标和下标复制大全(含0~9、字母、特殊字符)
  13. Android上的CPU和GPU是共享内存,为什么有的手机从GPU读取数据还是很慢?
  14. 域自适应(Domain Adaptation)简介
  15. win10家庭版怎么删除多余的用户
  16. ▷Scratch课堂丨在Scratch上制作植物大战僵尸游戏
  17. 矩阵与行列式的区别 行列式简单理解(二三阶)
  18. 超轻薄笔记本电脑软件测试,2009年度-13英寸超轻薄笔记本年度横向评测
  19. 慢性疲劳免疫失调综合症(CFIDS)
  20. go build编译失败:imports xxx/xxx/xxx: build constraints exclude all Go files in xxx/xxx/xxx

热门文章

  1. 基于STM32的学习记录--MQ系列计算公式
  2. DevExpress WPF的电子表格组件,让您更快获得Excel体验(二)
  3. php 解析网页慢,网页访问变慢的原因分析及优化
  4. 《新版一分钟经理人》读后感
  5. 提出计算机工作理念的科学家,提出字节序概念的计算机科学家 Danny Cohen 逝世...
  6. 热带水果的收藏(三亚)
  7. java计算机毕业设计服装连锁店后台管理系统(附源码、数据库)
  8. 关于微信公众平台服务器配置Token
  9. linux 执行文件时提示权限不够 chmod 777
  10. 3天怒肝5万字!阿里P7大佬手写MySQL超全笔记,还担心学不会吗?