953.Verifying an Alien Dictionary
===
###### tags: `Easy`,`Array`,`String`,`Hash Table`
[953. Verifying an Alien Dictionary](https://leetcode.com/problems/verifying-an-alien-dictionary/)
### 題目描述
In an alien language, surprisingly, they also use English lowercase letters, but possibly in a different `order`. The `order` of the alphabet is some permutation of lowercase letters.
Given a sequence of `words` written in the alien language, and the `order` of the alphabet, return `true` if and only if the given `words` are sorted lexicographically in this alien language.
### 範例
**Example 1:**
```
Input: words = ["hello","leetcode"], order = "hlabcdefgijkmnopqrstuvwxyz"
Output: true
Explanation: As 'h' comes before 'l' in this language, then the sequence is sorted.
```
**Example 2:**
```
Input: words = ["word","world","row"], order = "worldabcefghijkmnpqstuvxyz"
Output: false
Explanation: As 'd' comes after 'l' in this language, then words[0] > words[1], hence the sequence is unsorted.
```
**Example 3:**
```
Input: words = ["apple","app"], order = "abcdefghijklmnopqrstuvwxyz"
Output: false
Explanation: The first three characters "app" match, and the second string is shorter (in size.) According to lexicographical rules "apple" > "app", because 'l' > '∅', where '∅' is defined as the blank character which is less than any other character.
```
**Constraints**:
* 1 <= `words.length` <= 100
* 1 <= `words[i].length` <= 20
* `order.length` == 26
* All characters in `words[i]` and `order` are English lowercase letters.
### 解答
#### Python
```python=
class Solution:
def isAlienSorted(self, words: List[str], order: str) -> bool:
nums = []
for word in words:
word_to_num = []
for ch in word:
word_to_num.append(order.index(ch))
nums.append(word_to_num)
return nums == sorted(nums)
```
> [name=Ron Chen][time=Feb, 2, 2023]
### Reference
[回到題目列表](https://hackmd.io/@Marsgoat/leetcode_every_day)