Strobogrammatic Number II

来源:互联网 发布:知乎 app 编辑:程序博客网 时间:2024/05/16 00:41

参考:点击打开链接

列出为0,1的情况,之后的情况皆是在此基础上产生:从中间插入来建立这个临时的字符串

public class Solution {    public List<String> findStrobogrammatic(int n) {        return findStrobogrammaticHelper(n, n);    }        private List<String> findStrobogrammaticHelper(int m, int n) {        if (m == 0) {            String str = "";            List<String> list = new LinkedList<>();            //return list.add(str);            list.add(str);            return list;        } else if (m == 1) {            List<String> list = new LinkedList<>();            list.add("0");            list.add("1");            list.add("8");            return list;        }        List<String> result = new LinkedList<>();        List<String> list = findStrobogrammaticHelper(m - 2, n);        for (String str: list) {            if (m != n) {                result.add("0" + str + "0");            }            result.add("1" + str + "1");            result.add("6" + str + "9");            result.add("8" + str + "8");            result.add("9" + str + "6");        }        return result;    }}


0 0
原创粉丝点击