栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

【每日一题见微知著】贪心算法——最小时间差(超简单)

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

【每日一题见微知著】贪心算法——最小时间差(超简单)

⭐️寒假新坑——代码之狐的每日做题笔记

539. 最小时间差-Mid 题目描述:

给定一个 24 小时制(小时:分钟 “HH:MM”)的时间列表,找出列表中任意两个时间的最小时间差并以分钟数表示。允许跨天差,23.59和00.01之间最小时间差为2

解题思路:

排序+贪心——对时间序列排序,根据贪心策略——一定有排序好的相邻时间之间差值最小

代码实现:
class Solution {
    public int findMinDifference(List timePoints) {
        //保存分钟数
        int[] t=new int[timePoints.size()];
        int i=0;
        //将时间字符转化为分钟数
        for(String s:timePoints){
            t[i]+=(s.charAt(0)-'0')*10*60;
            t[i]+=(s.charAt(1)-'0')*60;
            t[i]+=(s.charAt(3)-'0')*10;
            t[i]+=(s.charAt(4)-'0');
            i++;
        }

        //升序排序
        Arrays.sort(t);
        int ans=24*60;
        //相邻序号做差,求最小差
        for(int index=0;index 
结尾 

题目来源:力扣(LeetCode) 链接:https://leetcode-cn.com/problems

⭐️关注作者,带你刷题,从简单的算法题了解最常用的算法技能(寒假每日一题)
⭐️关注作者刷题——简单到进阶,让你不知不觉成为无情的刷题机器,有问题请私信

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/709605.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号