zoukankan      html  css  js  c++  java
  • [leetcode]243. Shortest Word Distance最短单词距离

    Given a list of words and two words word1 and word2, return the shortest distance between these two words in the list.

    Example:
    Assume that words = ["practice", "makes", "perfect", "coding", "makes"].

    Input: word1 = “coding”, word2 = “practice”
    Output: 3
    Input: word1 = "makes", word2 = "coding"
    Output: 1

    题意:

    给定一列单词和俩单词,求这俩单词在一列中的最短距离。

    Solution1: Two Pointers

    扫words,若当前指针i 对应元素等于word1, 则将 i 赋给 a

                  若当前指针i 对应元素等于word2, 则将 i 赋给 b

                  同时更新result 


    code

     1 class Solution {
     2     public int shortestDistance(String[] words, String word1, String word2) {
     3         int result = Integer.MAX_VALUE;
     4         int a = -1;   // word1Idx
     5         int b = -1;   // word2Idx
     6         for(int i = 0; i< words.length; i++){
     7             if(words[i].equals(word1)){
     8                 a = i;
     9             }else if(words[i].equals(word2)){
    10                 b = i;
    11             }
    12             if(a!=-1 && b !=-1){
    13             result = Math.min(result, Math.abs(a-b));
    14             }       
    15         }
    16         return result;
    17     }
    18 }
  • 相关阅读:
    JAVA 动态代理
    IDEA 配置阿里云Maven
    JAVA Spring5静态代理
    Spring5 常用注解
    react
    Angular
    微信小程序
    H5
    vue-ui
    jQuery
  • 原文地址:https://www.cnblogs.com/liuliu5151/p/9148450.html
Copyright © 2011-2022 走看看