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

差分数组算法

详情

1094. 拼车
class Solution {public boolean carPooling(int[][] trips, int capacity) {TreeMap<Integer, Integer> diff = new TreeMap<>();for (int[] trip : trips) {int num = trip[0], from = trip[1], to = trip[2];diff.merge(from, num, Integer::sum);diff.merge(to, -num, Integer::sum);}int sum = 0;for (int v: diff.values()) {sum += v;if (sum > capacity) {return false;}}return true;}
}
1109. 航班预订统计
class Solution {public int[] corpFlightBookings(int[][] bookings, int n) {int[] res = new int[n + 1]; // 离开在后一个离开for (int[] booking : bookings) {int first = booking[0], last = booking[1], seat = booking[2];res[first - 1] += seat;res[last] -= seat;}for (int i = 1; i < n; i++) {res[i] += res[i - 1];}int[] ans = new int[n];System.arraycopy(res, 0, ans, 0, n);return ans;}
}
121. 买卖股票的最佳时机
class Solution {public int maxProfit(int[] prices) {int res = 0;int minPrice = prices[0];for (int price : prices) {res = Math.max(res, price - minPrice);  // 计算minPrice = Math.min(minPrice, price);   // 维护左边出现的最小价格}return res;}
}
122. 买卖股票的最佳时机 II
class Solution {public int maxProfit(int[] prices) {int n = prices.length;int[] diff = new int[n];diff[0] = prices[0];int res = 0;for (int i = 1; i < n; i++) {diff[i] = prices[i] - prices[i - 1];res += Math.max(diff[i], 0);}return res;}
}
253. 会议室II

给定一个会议时间安排的数组,每个会议时间都会包括开始和结束的时间 [[s1,e1],[s2,e2],...](si<ei)[[s_1,e_1],[s_2,e_2],...] (s_i < e_i)[[s1,e1],[s2,e2],...](si<ei), 为避免会议冲突,同时要考虑充分利用会议室资源,请你计算至少需要多少间会议室,才能满足这些会议安排。

示例 1:
输入: [[0, 30],[5, 10],[15, 20]]
输出: 2示例 2:
输入: [[7,10],[2,4]]
输出: 1
public class Solution {int minMeetingRooms(int[][] intervals) {int n = 10001;int[] diff = new int[n];for (int[] interval : intervals) {int start = interval[0], end = interval[1];diff[start] += 1;diff[end] -= 1;}int res = 0;for (int i = 1; i < n; i++) {diff[i] = diff[i - 1] + diff[i];res = Math.max(res, diff[i]);}return res;}
}
http://www.dtcms.com/a/286373.html

相关文章:

  • 柴油机活塞cad【4张】三维图+设计说明书
  • ollma dify 搭建合同审查助手
  • RabbitMQ—TTL、死信队列、延迟队列
  • ChatGPT Agent技术架构探析
  • 读书笔记(学会说话)
  • 变频器实习总结3 ISU单元 船舶电力系统
  • 锁步核,为什么叫锁步核?
  • jar命令提取 JAR 文件
  • AI 驱动的仪表板:从愿景到 Kibana
  • MySQL之SQL 优化全攻略:从原理到实战
  • 2025年华为认证之HCIE-云计算方向的报考流程
  • STM32之TB6612电机驱动模块
  • Oracle 11g RAC 高可用集群部署最佳实践
  • Level-MC 8”深暗之域“
  • 面向对象三大特性---继承
  • 大数据安全规划总体方案
  • 【深度学习】神经网络 批量标准化-part6
  • 在 OpenSUSE Tumbleweed 和 Leap 上安装 VirtualBox
  • Maven插件检测全路径名冲突如何开发Maven插件
  • AUTOSAR进阶图解==>AUTOSAR_SWS_E2ETransformer
  • 【加解密与C】Rot系列(二)Rot13
  • LVS(Linux virual server)
  • 【Git专栏】git如何切换到某个commit(超详细)
  • Java基础篇
  • Triton Inference Server 使用详解与常见问题汇总
  • 数据库模型异常问题深度解析:冗余与操作异常
  • 《在亚马逊平台运营:从专利困境到功能利用全指南》
  • 【数据结构】堆(下)+ 二叉树
  • 深度学习笔记002-引言--日常生活总的机器学习、训练模型的过程、关键组件、各种机器学习问题
  • 如何在服务器上获取Linux目录大小