1. Lexicographical Numbers

Given an integer n, return 1 - n in lexicographical order.

For example, given 13, return: [1,10,11,12,13,2,3,4,5,6,7,8,9].

public class Solution {
    public List<Integer> lexicalOrder(int n) {

        List<Integer> ans = new ArrayList<>();

        for(int i = 1; i <= 9; i ++)
            dfs(i, n, ans);

        return ans;
    }

    public void dfs(int cur, int n, List<Integer> ans) {

        if(cur > n)
            return ;

        ans.add(cur);

        for(int i = 0; i <= 9; i ++)
            dfs(cur * 10 + i, n, ans);

    }
}

results matching ""

    No results matching ""