编写一个 Go 程序来检查给定的矩阵是否为稀疏矩阵。如果矩阵包含大量零,则任何矩阵都是稀疏矩阵。Golang 稀疏矩阵的数学公式是零的数量 > (m * n)/2。
在嵌套的 for 循环中,我们使用 if 语句(if sparseMat[i][j] == 0)来计算矩阵中零的总数。最后一个 If else 语句(if count > ((i * j) / 2))检查零的总数是否大于行 * 列/2。如果为 True,则表示它是稀疏矩阵。
package main
import "fmt"
func main() {
var num, i, j int
var sparseMat [10][10]int
fmt.Print("Enter the Sparse Matrix Size = ")
fmt.Scan(&num)
fmt.Print("Enter the Sparse Matrix Items = ")
for i = 0; i < num; i++ {
for j = 0; j < num; j++ {
fmt.Scan(&sparseMat[i][j])
}
}
count := 0
for i = 0; i < num; i++ {
for j = 0; j < num; j++ {
if sparseMat[i][j] == 0 {
count++
}
}
}
if count > ((i * j) / 2) {
fmt.Println("It is a Sparse Matrix")
} else {
fmt.Println("It is Not a Sparse Matrix")
}
}
