[Swift]LeetCode247.對稱數 II $ Strobogrammatic Number II

★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公衆號:山青詠芝(shanqingyongzhi)
➤博客園地址:山青詠芝(https://www.cnblogs.com/strengthen/
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:http://www.javashuo.com/article/p-hzoiftts-mb.html 
➤若是連接不是山青詠芝的博客園地址,則多是爬取做者的文章。
➤原文已修改更新!強烈建議點擊原文地址閱讀!支持做者!支持原創!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★html

A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down).git

Find all strobogrammatic numbers that are of length = n.github

For example,
Given n = 2, return ["11","69","88","96"].微信

Hint:app

  1. Try to use recursion and notice that it should recurse with n - 2 instead of n - 1.

strobogramatic數字是旋轉180度時看起來相同的數字(上下顛倒)。ide

找到全部長度爲n的頻閃圖。spa

例如,code

給定n=2,返回 [「11」,「69」,「88」,「96」]。htm

提示:blog

嘗試使用遞歸,注意它應該使用n-2而不是n-1進行遞歸。


 1 class Solution {
 2     func shortest(_ n:Int) -> [String] {
 3         var one:[String] = ["0","1","8"]
 4         var two:[String] = [""]
 5         var res:[String] = two
 6         if n % 2 == 1
 7         {
 8             res = one
 9         }
10         for i in stride(from: (n % 2) + 2,through: n,by: 2)
11         {
12             var t:[String] = [String]()
13             for a in res
14             {
15                 if i != n
16                 {
17                     t.append("0" + a + "0")
18                 }
19                 t.append("1" + a + "1")
20                 t.append("6" + a + "9")
21                 t.append("8" + a + "8")
22                 t.append("9" + a + "6")
23             }
24             res = t
25         }
26         return res
27     }
28 }
相關文章
相關標籤/搜索