953 LeetCode 验证外星语词典

题目描述:
在这里插入图片描述
思路:
首先使用哈希表记录外星语字母顺序(就是索引)
然后再判断给定的单词的顺序是否符合外星语字母顺序

代码如下:

class Solution {
public:
    bool isAlienSorted(vector<string>& words, string order) {
        map<char,int>index;
        for(int i=0;i<order.size();i++){
            index[order[i]]=i;
        }
        for(int i=0;i<words.size()-1;i++){
            int j=0;
            for(j;j<min(words[i].size(),words[i+1].size());j++){
                if(index[words[i][j]]>index[words[i+1][j]])
                return false;
                if(index[words[i][j]]<index[words[i+1][j]])
                break;
            }
            if(j==min(words[i].size(),words[i+1].size())&&words[i].size()>words[i+1].size())
            return false;
        }
        return true;
    }
};
发布了158 篇原创文章 · 获赞 0 · 访问量 1616

猜你喜欢

转载自blog.csdn.net/peachzy/article/details/104609356