mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-08 16:54:50 +08:00
添加 383. 赎金信 Swift版本
This commit is contained in:
@ -266,6 +266,28 @@ var canConstruct = function(ransomNote, magazine) {
|
|||||||
};
|
};
|
||||||
```
|
```
|
||||||
|
|
||||||
|
Swift:
|
||||||
|
```swift
|
||||||
|
func canConstruct(_ ransomNote: String, _ magazine: String) -> Bool {
|
||||||
|
var record = Array(repeating: 0, count: 26);
|
||||||
|
let aUnicodeScalarValue = "a".unicodeScalars.first!.value
|
||||||
|
for unicodeScalar in magazine.unicodeScalars {
|
||||||
|
// 通过record 记录 magazine 里各个字符出现的次数
|
||||||
|
let idx: Int = Int(unicodeScalar.value - aUnicodeScalarValue)
|
||||||
|
record[idx] += 1
|
||||||
|
}
|
||||||
|
for unicodeScalar in ransomNote.unicodeScalars {
|
||||||
|
// 遍历 ransomNote,在record里对应的字符个数做 -- 操作
|
||||||
|
let idx: Int = Int(unicodeScalar.value - aUnicodeScalarValue)
|
||||||
|
record[idx] -= 1
|
||||||
|
// 如果小于零说明在magazine没有
|
||||||
|
if record[idx] < 0 {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
```
|
||||||
|
|
||||||
|
|
||||||
-----------------------
|
-----------------------
|
||||||
|
Reference in New Issue
Block a user