描述
题目来自leetcode
二题解:
可以采用回溯代换数字,然后进行数字排序,也可以直接采用拓扑排序,回溯代换数字的代码结构要比拓扑排序的复杂且复杂度要高,不过针对数据量少的数据集还是可以用的。
/**
* @param {string[]} words
* @return {string}
*/
var getCode = function(a) {
return a.charCodeAt(0) - 97;
}
var getChar = function(code){
return String.fromCharCode(code + 97);
};
var alienOrder = function(words) {
var ans = "";
var edge = [];
var v = [];
var visited = [];
var used = [];
for(let i = 0; i < 26; i++) {
edge[i] = [];
v[i] = 0; visited[i] = 0;used[i] = 0;
for(let j = 0; j < 26; j++) {
edge[i][j