package Recursion import ( "fmt" ) // 实现一组数据集合的全排列 type RangeType struct { value []interface{} } func NewRangeArray(n int) *RangeType { return &RangeType{ make([]interface{},n), } } func (slice *RangeType)RangeALL( start int) { len := len(slice.value) if start == len-1{ // 如果已经是最后位置,直接将数组数据合并输出 fmt.Println(slice.value) } for i:=start; i