LeetCode 0247 Strobogrammatic Number 2
A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down).
Find all strobogrammatic numbers that are of length = n.
For example,
Given n = 2, return ["11","69","88","96"]
.
public class StrobogrammaticNumberII {
public List<String> findStrobogrammatic(int n) {
return helper(n, n);
}
private List<String> helper(int n, int m) {
if (n == 0) return new ArrayList<>(Arrays.asList(""));
if (n == 1) return new ArrayList<>(Arrays.asList("0", "1", "8"));
List<String> list = helper(n - 2, m);
List<String> result = new ArrayList<>();
for (int i = 0; i < list.size(); i++) {
String s = list.get(i);
if (n != m) result.add("0" + s + "0");
result.add("1" + s + "1");
result.add("6" + s + "9");
result.add("8" + s + "8");
result.add("9" + s + "6");
}
return result;
}
}
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。