您的位置:首页 > 其它

LeetCode Shortest Word Distance

2016-02-11 04:39 525 查看
原题链接在这里:https://leetcode.com/problems/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.

For example,
Assume that words =
["practice", "makes", "perfect", "coding", "makes"]
.

Given word1 =
“coding”
, word2 =
“practice”
, return 3.
Given word1 =
"makes"
, word2 =
"coding"
, return 1.

Note:
You may assume that word1 does not equal to word2, and word1 and word2 are both in the list.

题解:

Time Complexity: O(n). Space: O(1).

AC Java:

public class Solution {
public int shortestDistance(String[] words, String word1, String word2) {
int p1 = -1;
int p2 = -1;
int res = Integer.MAX_VALUE;
for(int i = 0; i<words.length; i++){
if(words[i].equals(word1)){
p1 = i;
}
if(words[i].equals(word2)){
p2 = i;
}
if(p1 != -1 && p2 != -1){
res = Math.min(res, Math.abs(p2-p1));
}
}
return res;
}
}


跟上Shortest Word Distance II, Shortest Word Distance III.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: