chatGPT生成代码--go组合算法

提问:用golang写一个组合算法函数zuhe(x,n),x为组合所需的字符,n 为组合后的字符串长度,例如 x="ab", n=2 结果返回 aa,ab,bb,ba
结果:下面是一个用Go编写的生成长度为n的字符串组合的函数 zuhe,其中 x 是组合的字符,n 是组合后的字符串长度,它将返回所有长度为 n 的字符串组合:

package main

import (
	"fmt"
	"strings"
)

func zuhe(x string, n int) []string {
	var combinations []string
	var generateCombination func(currentCombination string, remainingLength int)

	generateCombination = func(currentCombination string, remainingLength int) {
		if remainingLength == 0 {
			combinations = append(combinations, currentCombination)
			return
		}

		for _, char := range x {
			generateCombination(currentCombination+string(char), remainingLength-1)
		}
	}

	generateCombination("", n)
	return combinations
}

func main() {
	x := "ab"
	n := 2

	result := zuhe(x, n)

	fmt.Println("组合结果:", strings.Join(result, ","))
}

网上的许多组合代码都不如人意,突发奇想用chatGPT尝试,试了几次,得出了意想不到的结果,后续继续上gpt-go 码

猜你喜欢

转载自blog.csdn.net/glc22/article/details/132684150