diff --git "a/homework/\347\254\254\344\272\214\345\221\250/GO-7\346\234\237-7098-\344\277\236\346\266\233\346\257\205/main.go" "b/homework/\347\254\254\344\272\214\345\221\250/GO-7\346\234\237-7098-\344\277\236\346\266\233\346\257\205/main.go" new file mode 100644 index 0000000000000000000000000000000000000000..2590139ca1ec527b222390d4b2beeecee2609591 --- /dev/null +++ "b/homework/\347\254\254\344\272\214\345\221\250/GO-7\346\234\237-7098-\344\277\236\346\266\233\346\257\205/main.go" @@ -0,0 +1,49 @@ +package main + +import ( + "fmt" + "math/rand" + "strconv" + "strings" + "time" + // "math/rand" +) + +func get_int() { + cur_int := make([]int, 0, 10) + rand.Seed(time.Now().UnixNano()) + for i := 0; i < 100; i++ { + + cur_int = append(cur_int, rand.Intn(128)) + + } + count_int := make(map[int]int) + for _, value := range cur_int { + count_int[value] = count_int[value] + 1 + } + + fmt.Printf("随机100个元素中,共有%d不同的元素", len(count_int)) +} + +func arr2string(arr []int) string { + toStr := strings.Builder{} + var b string + for _, value := range arr { + a := strconv.Itoa(value) + b := strings.Join([]string{a, b}, " ") + toStr.WriteString(b) + } + return strings.TrimSuffix(toStr.String(), " ") + +} + +func main() { + + //统计100个元素中有多少个互不相同元素 + get_int() + + //2. 实现一个函数func arr2string(arr []int) string,比如输入[]int{2,4,6},返回“2 4 6”。输入的切片可能很短,也可能很长。 + arr := []int{2, 3, 20, 103, 10} + fmt.Printf("%v", arr2string(arr)) + +}