美文网首页
Golang输入一个字符串,打印出该字符串中字符的所有排列

Golang输入一个字符串,打印出该字符串中字符的所有排列

作者: ES_KYW | 来源:发表于2020-09-13 22:05 被阅读0次

输入一个字符串,打印出该字符串中字符的所有排列。
例如输入字符串abc,则输出由字符a、b、c 所能排列出来的所有字符串abc、acb、bac、bca、cab 和cba。
分析:这是一道很好的考查对递归理解的编程题。
参考网上一个Java例子,但没能理解

func permutation( str []byte, i int)  {
    if i > len(str) {
        return
    }
    if i == len(str) -1 {
        println(string(str[:]))
    }else {
        for j := i; j<len(str);j ++  {

            str[j], str[i] = str[i],str[j]

            permutation(str,i+1)

            str[j], str[i] = str[i],str[j]
        }
    }
}
结果
    str :=[]byte{'a','b','c'}
    permutation(str,0)
abc
acb
bac
bca
cba
cab


相关文章

  • JZ-027-字符串的排列

    字符串的排列 题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则按字典序打...

  • 38:字符串的排列

    题目38:字符串的排列 输入一个字符串,打印出该字符串中字符的所有排列。 举例说明 例如输入字符串abc。则打印出...

  • 剑指offer - 字符串的排列

    题目 输入一个字符串,打印出该字符串中字符的所有排列。 例如,输入字符串abc,则打印出由字符串a、b、c能排列出...

  • 《剑指offer》Java实现--打印字符链表的所有全排列

    题目描述 输入一个字符串,打印出该字符串中字符的所有排列。例如,输入字符串abc,则打印出由字符a、b、c所能排列...

  • 来点有趣的算法-字符串全排列

    一、题目 输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc。则打印出由字符a、b、c 所能排列...

  • 《剑指offer》— JavaScript(27)字符串的排列

    字符串的排列 题目描述 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字...

  • 面试题38:字符串的全排列和组合

    题型1:排列/** 输入一个字符串,按字典序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a...

  • 面试题28:字符串的排列

    题目:输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a、b、c所能排列出来的...

  • 38字符串的排列

    输入一个字符串,按字典的顺序打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由字符a、b、c所能排列...

  • 《剑指Offer》-38.字符串的排列

    题干 输入一个字符串,打印出该字符串中字符的所有排列。例如输入字符串abc,则打印出由a、b、c所能排列出来的所有...

网友评论

      本文标题:Golang输入一个字符串,打印出该字符串中字符的所有排列

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