# 539. Minimum Time Difference

## 刷题内容

• https://leetcode.com/problems/minimum-time-difference

Given a list of 24-hour clock time points in "Hour:Minutes" format, find the minimum minutes difference between any two time points in the list.

Example 1:
Input: ["23:59","00:00"]
Output: 1

Note:
The number of time points in the given list is at least 2 and won't exceed 20000.
The input time is legal and ranges from 00:00 to 23:59.


## 解题方案

• 将所有时间转换成分钟数，然后进行sort排序
• 计算两个数之间的差值，找出最小差值即可
• 不要忘记第一个时间与最后一个时间相比较

/**
* @param {string[]} timePoints
* @return {number}
*/
var findMinDifference = function(timePoints) {
var dayTime = 24*60;
var minTime = 24*60;
var temp = timePoints.map(function (value) {
var t = value.split(':');
return parseInt(t[0])*60+parseInt(t[1]);
});
temp.sort(function (a,b) {
return a-b;
});
for(var i =0;i<temp.length;i++){
var diff;
var f=i-1,b=i;
if(i==0)
f=temp.length-1;
if((temp[f]-temp[b])>(dayTime/2)){
diff = Math.abs(temp[f]-(temp[b]+dayTime));
minTime = diff<minTime?diff:minTime;
}else {
diff = Math.abs(temp[f]-temp[b]);
minTime = diff<minTime?diff:minTime;
}
}
return minTime===1440?0:minTime;
};