Skip to main content
Back to problems
#539
Medium Algorithms

Minimum time difference

Array Math String Sorting
62.6% acceptance
Feb 19, 2026
2602
320
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.

Solution

Rust
Time O(n log n)
Space O(1)
LeetCode
solution.rs
impl Solution {
  pub fn find_min_difference(time_points: Vec<String>) -> i32 {
    let mut minutes: Vec<i32> = time_points.iter().map(|t| {
      let h: i32 = t[..2].parse().unwrap();
      let m: i32 = t[3..].parse().unwrap();
      h * 60 + m
    }).collect();
    minutes.sort_unstable();
    let n = minutes.len();
    let mut result = 24 * 60 - minutes[n-1] + minutes[0];
    for i in 1..n {
      result = result.min(minutes[i] - minutes[i-1]);
    }
    result
  }
}