Testing Permutation Algorithm Implementations in hello-algo
This test suite validates permutation algorithms implementation in Go, focusing on both unique and duplicate element permutations. It demonstrates comprehensive testing of backtracking algorithms with different input scenarios.
Test Coverage Overview
Implementation Analysis
Technical Details
Best Practices Demonstrated
krahets/hello-algo
codes/go/chapter_backtracking/permutation_test.go
// File: permutation_test.go
// Created Time: 2023-05-09
// Author: Reanon ([email protected])
package chapter_backtracking
import (
"fmt"
"testing"
. "github.com/krahets/hello-algo/pkg"
)
func TestPermutationI(t *testing.T) {
/* 全排列 I */
nums := []int{1, 2, 3}
fmt.Printf("输入数组 nums = ")
PrintSlice(nums)
res := permutationsI(nums)
fmt.Printf("所有排列 res = ")
fmt.Println(res)
}
func TestPermutationII(t *testing.T) {
nums := []int{1, 2, 2}
fmt.Printf("输入数组 nums = ")
PrintSlice(nums)
res := permutationsII(nums)
fmt.Printf("所有排列 res = ")
fmt.Println(res)
}