LeetCode 面试题 17.11单词距离[数组 双指针] HERODING的LeetCode之路

Posted HERODING23

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了LeetCode 面试题 17.11单词距离[数组 双指针] HERODING的LeetCode之路相关的知识,希望对你有一定的参考价值。


解题思路:
一道非常简单的数组题,定义两个index分别指向当前最近访问到的word1和word2的下标,然后更新二者最小差值即可,代码如下:

class Solution 
public:
    int findClosest(vector<string>& words, string word1, string word2) 
        int dis = INT_MAX;
        int index1 = -1, index2 = -1;
        for(int i = 0; i < words.size(); i ++) 
            if(words[i] == word1) 
                index1 = i;
                if(index2 != -1) 
                    dis = min(dis, index1 - index2);
                
            
            if(words[i] == word2) 
                index2 = i;
                if(index1 != -1) 
                    dis = min(dis, index2 - index1);
                
            
        
        return dis;
    
;

以上是关于LeetCode 面试题 17.11单词距离[数组 双指针] HERODING的LeetCode之路的主要内容,如果未能解决你的问题,请参考以下文章

LeetCode 面试题 17.11. 单词距离 / 1021. 删除最外层的括号 / 468. 验证IP地址

#yyds干货盘点# LeetCode面试题:串联所有单词的子串

Leetcode简单题41~60

LeetCode 面试题03. 数组中重复的数字

LeetCode 面试题45. 把数组排成最小的数

LeetCode 面试题45. 把数组排成最小的数