0386. Lexicographical Numbers
Description
**Input:** n = 13
**Output:** [1,10,11,12,13,2,3,4,5,6,7,8,9]**Input:** n = 2
**Output:** [1,2]ac
class Solution {
public List<Integer> lexicalOrder(int n) {
List<Integer> res = new ArrayList<>();
for (int i = 1; i <=9; i++) dfs(n, i, res);
return res;
}
public boolean dfs(int n, int k, List<Integer> res) {
// exit
if (k > n) return false;
if (k != 0) res.add(k);
for (int i = 0; i <= 9; i++) {
if (!dfs(n, k * 10 + i, res)) break;
}
return true;
}
}
/*
10-nodes tree, pre-order traversal, same as #440
*/Last updated