1. 题目

给定一个 24 小时制(小时:分钟)的时间列表,找出列表中任意两个时间的最小时间差并已分钟数表示。

示例 1:
输入: ["23:59","00:00"]
输出: 1备注:
列表中时间数在 2~20000 之间。
每个时间取值在 00:00~23:59 之间。

来源:力扣(LeetCode)
链接:https://leetcode-cn.com/problems/minimum-time-difference
著作权归领扣网络所有。商业转载请联系官方授权,非商业转载请注明出处。

2. 解题

  • 字符串转换成 分钟 时间处理
  • 将分钟存进 哈希数组映射里(下标是分钟,内容是标记是否存在)
  • 最后依次取出,相邻的做差,求最小
  • 最后在考虑下第一个和最后一个的差
class Solution {public:int findMinDifference(vector<string>& timePoints) {int mins[1440] = {0};int m, i;for(auto& s : timePoints){m = ((s[0]-'0')*10+s[1]-'0')*60+(s[3]-'0')*10+s[4]-'0';if(mins[m] != 0)//已经存在return 0;mins[m] = 1;}int first, prev, last, ans = 1440;for(i = 0; i < 1440 && mins[i] == 0; i++){}first = prev = i++;for( ; i < 1440; ++i){if(mins[i] == 1){last = i;ans = min(ans, last-prev);prev = last;}}return min(ans, first-last+1440);}
};

LeetCode 539. 最小时间差(哈希)相关推荐

  1. Java 第 21 课 1200. 最小绝对差 539. 最小时间差

    第 21 课 1200. 最小绝对差 539. 最小时间差 基础知识 Java ArrayList 方法 List.of 和 Arrays.asList ArrayList 排序 1200. 最小绝对 ...

  2. 539.最小时间差-LeetCode

    难度:中等 目录 一.问题描述 二.解题思想 三.解题 1.判断极端情况 2.代码实现 一.问题描述 这里我直接采用的LeetCode上面的问题描述. 给定一个 24 小时制(小时:分钟 " ...

  3. Java每日一题——>剑指 Offer II 035. 最小时间差(三解,蛮力,排序,哈希)

    文章目录 题目 题解1(蛮力法) 代码实现 复杂度分析 题解2(排序) 代码实现 复杂度分析 题解3(哈希表) 代码实现 复杂度分析 题目 这是LeetCode上的 [035,最小时间差],难度为 [ ...

  4. mysql 最小时间 最大时间_leetcode539_go_最小时间差

    题目 给定一个 24 小时制(小时:分钟 "HH:MM")的时间列表,找出列表中任意两个时间的最小时间差并以分钟数表示. 示例 1:输入:timePoints = ["2 ...

  5. 最小完美哈希函数简介

    http://www.yankay.com/introduction-to-opmphf/ 什么是保序最小完美哈希函数 我曾经花了很多脑筋来找一个很好很完美的哈希算法,但都没有想到,最近看到了,掩不住 ...

  6. leetcode 64. 最小路径和(递归 / 动态规划解法图解)(Java版)

    题目 leetcode 64. 最小路径和 提示: m == grid.length n == grid[i].length 1 <= m, n <= 200 0 <= grid[i ...

  7. LeetCode 1631. 最小体力消耗路径(DFS + 二分查找)

    文章目录 1. 题目 2. 解题 1. 题目 你准备参加一场远足活动.给你一个二维 rows x columns 的地图 heights ,其中 heights[row][col] 表示格子 (row ...

  8. LeetCode 939. 最小面积矩形(哈希)

    文章目录 1. 题目 2. 解题 1. 题目 给定在 xy 平面上的一组点,确定由这些点组成的矩形的最小面积,其中矩形的边平行于 x 轴和 y 轴. 如果没有任何矩形,就返回 0. 示例 1: 输入: ...

  9. LeetCode 1257. 最小公共区域(最小公共祖先)

    文章目录 1. 题目 2. 解题 1. 题目 给你一些区域列表 regions ,每个列表的第一个区域都包含这个列表内所有其他区域. 很自然地,如果区域 X 包含区域 Y ,那么区域 X 比区域 Y ...

最新文章

  1. [HNOI2015]接水果
  2. 深度学习~生成式对抗神经网络GAN
  3. webpack 4.0 小记
  4. centos mysql pmm_【MySQL】MySQL监控利器PMM
  5. 华为留了一手!将继续发布P50、Mate50:搭载麒麟9000...
  6. 转载:KOF97键盘连招
  7. Android开源代码解读のOnScrollListener实现ListView滚屏时不加载数据
  8. python3读取多行数据合并_python3 数据规整化:清理、转换、合并、重塑(一)
  9. 欧姆龙新​​ 3D AOI 系统中的软件和人工智能
  10. 邓凡平WIFI学习笔记1:netd
  11. rabbitmq 406 错误
  12. 13个搭讪绝招助你告别单身
  13. xshell中黏贴时,出现vi乱行问题
  14. 高德地图第三方组件应用
  15. js中写文档write和innerHTML的区别
  16. web项目发布到iis中readystate一直处于 interactive_Framer Web 发布后,终于像个正经的设计软件了。...
  17. 微服务系统设计(一) -- 如何拆分服务
  18. Java是什么软件-详细解答Java到底是什么
  19. W5500的以太网电路,正常线序连接的话可能必须做过孔交叉线序,能否在线路上做交叉处理?
  20. LinuxProbe学习笔记(十三)

热门文章

  1. Opencv 图像增强算法 图像检测结果及代码
  2. c++远征之模板篇——静态数据成员,静态成员函数
  3. P2237 [USACO14FEB]自动完成Auto-complete
  4. Linux tp5伪静态设置
  5. 树莓派安装MySQL数据库与卸载
  6. linux--切换ipython解释器到python3
  7. tyvj 1391 走廊泼水节【最小生成树】By cellur925
  8. the params of sys aud mod req msgs from TV
  9. Golang切片的三种简单使用方式及区别
  10. apiCloud中的API对象