美文网首页iOS猿媛圈
Swift-变位词判断

Swift-变位词判断

作者: FlyElephant | 来源:发表于2016-12-27 09:58 被阅读7次

题目:如果两个单词的组成字母完全相同,只是字母的排列顺序不一样,则它们就是变位词,两个单词相同也被认为是变位词。如tea 与eat , nic 与cin, ddc与dcd, abc与abc.
核心代码:
<pre><code>`
func isAnagram(first:String,next:String) -> Bool {
if first == next {
return true
}

    var dict:[String:Int] = [:]
    for i in 0..<first.characters.count {
        let char:String = first[i]
        if dict[char] != nil {
            let count:Int = dict[char]!
            dict[char] = count + 1
        } else {
           dict[char] = 1
        }
    }
    
    for i in 0..<next.characters.count {
        let char:String = next[i]
        if dict[char] != nil {
            let count:Int = dict[char]!
            dict[char] = count - 1
        }
    }
    
    var result:Bool = true
    for (_,value) in dict {
        if value != 0 {
            result = false
        }
    }
    return result
}`</code></pre>

测试代码:
<pre><code>`

var isAnagram:Bool = hashSearch.isAnagram(first: "abca", next: "baccccc")
print("FlyElephant-是否是变位词---(isAnagram)")`</code></pre>

相关文章

  • Swift-变位词判断

    题目:如果两个单词的组成字母完全相同,只是字母的排列顺序不一样,则它们就是变位词,两个单词相同也被认为是变位词。如...

  • 变位词问题

    "变位词"判断问题 问题描述 所谓变位词是指两个词之间存在组成字母的重新排列关系 如:heart和earth,py...

  • 2.3“变位词”判断问题

    问题描述 所谓“变位词”是指两个词之间存在组成字母的重新排列关系如:heart和earth,python和typh...

  • 1.【Java/Python】判断字符串是否为变位词

    【题目】 写一个函数判断两个字符串是否是变位词。 【分析】 变位词(anagrams)指的是组成两个单词的字符相同...

  • 两个字符串是变位词

    判断两个字符串是变位词 样例给出 s = "abcd",t="dcab",返回 true.给出 s = "ab",...

  • 剑指 Offer II 032. 有效的变位词

    注意“a” 和 “a” 不是变位词= =。。

  • “变位词”问题

    “变位词”问题 问题描述 变位词是指两个词存在组成字母的重新排列问题。例如:heart 和 earth、pytho...

  • 变位词的几种解法与时间复杂度

    变位词 问题描述 所谓“变位词”是指两个词之间存在组成字母的 重新排列关系如:heart和earth,python...

  • 变位词回溯算法

  • 高效变位词查找

    变位词指的是一个单词经过改编字母顺序之后得到的另一个单词。在变位过程中不可以移除任何字母。 在一个数...

网友评论

    本文标题:Swift-变位词判断

    本文链接:https://www.haomeiwen.com/subject/hdbsvttx.html