[Swift]LeetCode246.对称数 $ Strobogrammatic Number
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
➤微信公众号:山青咏芝(shanqingyongzhi)
➤博客园地址:山青咏芝(https://www.cnblogs.com/strengthen/)
➤GitHub地址:https://github.com/strengthen/LeetCode
➤原文地址:https://www.cnblogs.com/strengthen/p/10214231.html
➤如果链接不是山青咏芝的博客园地址,则可能是爬取作者的文章。
➤原文已修改更新!强烈建议点击原文地址阅读!支持作者!支持原创!
★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★★
A strobogrammatic number is a number that looks the same when rotated 180 degrees (looked at upside down).
Write a function to determine if a number is strobogrammatic. The number is represented as a string.
Example 1:
Input: "69" Output: true
Example 2:
Input: "88" Output: true
Example 3:
Input: "962" Output: false
strobogramatic数字是旋转180度时看起来相同的数字(上下颠倒)。
写一个函数来确定一个数字是否是频闪的。数字用字符串表示。
例1:
输入:“69”
输出:true
例2:
输入:“88”
输出:真
例3:
输入:“962”
输出:false
1 class Solution { 2 func isStrobogrammatic(_ num:String) -> Bool { 3 var m:[Character:Character] = ["0":"0","1":"1","8":"8","6":"9","9":"6"] 4 let len = num.count 5 for i in 0...len/2 6 { 7 if m[num[i]] != num[len - i - 1] 8 { 9 return false 10 } 11 } 12 return true 13 } 14 } 15 16 extension String { 17 //subscript函数可以检索数组中的值 18 //直接按照索引方式截取指定索引的字符 19 subscript (_ i: Int) -> Character { 20 //读取字符 21 get {return self[index(startIndex, offsetBy: i)]} 22 } 23 }