classSolution { public: boolisAlienSorted(vector<string>& words, string order){ int dict[26] = {0}; for (int i = 0; i < 26; ++i) { dict[order[i] - 'a'] = i; } for (int i = 1; i < words.size(); ++i) { if (!lte(words[i - 1], words[i], dict)) returnfalse; } returntrue; }
boollte(conststring &a, conststring &b, int dict[26]){ int m = a.length(), n = b.length(); for (int i = 0; i < min(m, n); ++i) { if (a[i] == b[i]) continue; return dict[a[i] - 'a'] <= dict[b[i] - 'a']; } return m <= n; } };