Skip to content

按键持续时间最长的键

LeetCode-1629

js

var slowestKey = function(releaseTimes, keysPressed) {
  let ans = keysPressed[0], // 记录时间最长的按键
      maxTime = releaseTimes[0], // 记录时间
      time // 临时变量,用于保存当前遍历到的时间
  for(let i = 1; i < releaseTimes.length; i++) {
    time = releaseTimes[i] - releaseTimes[i-1]
    // 后者按键时间大于前者
    if(time > maxTime) {
      maxTime = time
      ans = keysPressed[i] // 保存结果
    }
    // 按键时间相等,比较字符的ASCII码大小(js字符比较就是比较ASCII码)
    else if(time === maxTime && keysPressed[i] > ans) {
      ans = keysPressed[i] // 保存结果(时间相同,无需记录,继续往后遍历)
    }
  }
  return ans
}