?LeetCode刷題實(shí)戰(zhàn)539:最小時間差
Given a list of 24-hour clock time points in "HH:MM" format, return the minimum minutes difference between any two time-points in the list.
示例? ? ? ? ? ? ? ? ? ? ? ? ?
示例 1:
輸入:timePoints = ["23:59","00:00"]
輸出:1
示例 2:
輸入:timePoints = ["00:00","23:59","00:00"]
輸出:0
解題
class?Solution?{
????????public?int?findMinDifference(ListtimePoints ) {
????????????int?size=timePoints.size();
????????????//仿時間戳做個今明兩天的數(shù)組
????????????int[] time=new?int[size*2];
????????????for?(int?i = 0,idx=0; i2,i++) {
????????????????String[] split = timePoints.get(i).split(":");
????????????????int?h = Integer.parseInt(split[0]);
????????????????int?m = Integer.parseInt(split[1]);
????????????????//計(jì)算當(dāng)前時間的時間戳
????????????????time[idx]=h*60+m;
????????????????//計(jì)算后一天當(dāng)前時間的時間戳
????????????????//60*24=1440分鐘
????????????????time[idx+1]=time[idx]+1440;
????????????}
????????????Arrays.sort(time);
????????????int?res=Integer.MAX_VALUE;
????????????for?(int?i = 0; i+1?< time.length; i++) {
????????????????res=Math.min((time[i+1]-time[i]),res);
????????????}
????????????return?res;
????????}
????}
