在語言中有一個最小函數https://golang.org/pkg/math/#Min但是如果我有兩個以上的數字呢?我必須在for循環中寫一個手動比較,還是有另一種方式?數字在切片中。找到golang的最小值?
-3
A
回答
3
不,沒有比循環更好的方法。它不僅比任何其他方法都清潔,而且也是最快的。
values := []int{4, 20, 0, -11, -10}
min := values[0]
for _, v := range values {
if (v < min) {
min = v
}
}
fmt.Println(min)
編輯
由於一直在錯誤處理,以及如何處理空片的評論一些討論,這裏是確定的最小值的基本功能。請記得導入errors
。
func Min(values []int) (min int, e error) {
if len(values) == 0 {
return 0, errors.New("Cannot detect a minimum value in an empty slice")
}
min = values[0]
for _, v := range values {
if (v < min) {
min = v
}
}
return min, nil
}
0
相關問題
- 1. 找到最長距離的最小值
- 2. T-SQL找到最小值
- 3. 找到最小正值
- 4. MATLAB:fmincon找不到最小值
- 5. Python,lambda,找到最小值
- 6. 試圖找到最小值
- 7. 找到最小和最大像素值
- 8. 查找本地最小值最小值
- 9. 有最小值和最小值的需求尋找,然後找到對象
- 10. Excel:找到範圍中的最小值
- 11. 找到一個數組的最小值
- 12. 找到活動圖表的最小值
- 13. 找到信號的局部最小值
- 14. 找到存儲最小值的元素
- 15. 找到2個論據的最小值
- 16. 找到座標點的最小值
- 17. 找到一組輸入的最小值
- 18. 找到變量中的最小值?
- 19. 找到兩個最小的值輸入
- 20. 如何找到M的最小值?
- 21. Excel VBA - 找到最小的值列表?
- 22. 下劃線找到對象值的最小值和最大值
- 23. 查找最小值的最大值
- 24. 找到表中數據的最小最大值和平均值
- 25. 如何找到一個數組的最大值和最小值
- 26. 如何找到標量的最大值和最小值?
- 27. 找到一個DataTable使用C#的最大值和最小值
- 28. 找到最大值和最小值的C++函數
- 29. 找到[最大值,最小值在列表蟒列表值
- 30. 找到最小值,以滿足模數
如果切片只包含正值,例如'[] int {4,5}'。 – icza
由於您現在無條件地爲第一個元素編制索引,所以如果切片爲空,它會導致運行時恐慌,例如, '[] INT {}'。 – icza
再次 - 空片的結果應該是什麼? – lofcek