题目描述:
思路:
首先使用哈希表记录外星语字母顺序(就是索引)
然后再判断给定的单词的顺序是否符合外星语字母顺序
代码如下:
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;
}
};