题解 | #明明的随机数#
明明的随机数
https://www.nowcoder.com/practice/3245215fffb84b7b81285493eae92ff0
package main
import (
"fmt"
"sort"
)
func removeDuplicatesAndSort(numbers []int) []int {
dict := make(map[int]bool)
result := []int{}
// 遍历数组,将数字添加到字典中
for _, num := range numbers {
dict[num] = true
}
// 提取字典中的键(唯一数字)
for num := range dict {
result = append(result, num)
}
// 对结果进行排序
sort.Ints(result)
return result
}
func main() {
var N int
fmt.Scan(&N)
numbers := make([]int, N)
for i := 0; i < N; i++ {
fmt.Scan(&numbers[i])
}
result := removeDuplicatesAndSort(numbers)
// 输出结果
for _, num := range result {
fmt.Println(num)
}
}
正确示例:
首先,输入随机整数的个数N,然后输入N个整数。接下来,代码会调用removeDuplicatesAndSort函数来删除重复数字并按照升序排序。最后,打印排序后的结果。
错误示例:
package main
import (
"fmt"
"math/rand"
"time"
)
func main() {
var input int
fmt.Scan(&input)
// 随机种子生成器
rand.Seed(time.Now().UnixNano())
arr := make([]int, 0, input)
for i := 0; i < input; i++ {
// fmt.Println(rand.Intn(500) + 1)
num := rand.Intn(500) + 1
arr = append(arr, num)
}
sort.Ints(arr)
fmt.Println(arr)
}
三奇智元机器人科技有限公司公司福利 56人发布