首页 > 代码库 > lexicographical-numbers

lexicographical-numbers

https://leetcode.com/problems/lexicographical-numbers/public class Solution {    public List<Integer> lexicalOrder(int n) {        List<Integer> ret = new ArrayList<Integer>();        int cur = 1;        ret.add(cur);                while (cur > 0) {            if (cur * 10 <= n) {                cur *= 10;                ret.add(cur);                continue;            }            while (cur % 10 == 9) {                cur /= 10;            }            if (cur == 0) {                break;            }            if (cur + 1 <= n) {                cur++;                ret.add(cur);            }            else {                cur /= 10;                while (cur % 10 == 9) {                    cur /= 10;                }                if (cur == 0) {                    break;                }                cur++;                ret.add(cur);            }        }                return ret;    }}

 

lexicographical-numbers