如何在GoLang中实现中文字符串排列组合?

如何在golang中实现中文字符串排列组合?

golang实现中文字符串排列组合

如何在golang中对中文字符串进行排列组合?

网上有一段代码可以实现英文字符串排列组合,但无法处理中文字符。针对这个问题,可以使用rune类型对中文字符进行处理,具体实现如下:

func permutation(S string) []rune {
    nameRune := []rune(S)
    if len(nameRune) == 1 {
        return nameRune
    }

    ret := []rune{}
    for i, s := range nameRune {
        tmp := fmt.Sprintf("%c%c", nameRune[:i], nameRune[i+1:])
        res := permutation(tmp)
        for _, r := range res {
            ret = append(ret, s, r)
        }
    }

    return ret
}

以上就是如何在GoLang中实现中文字符串排列组合?的详细内容,更多请关注其它相关文章!