稀疏矩陣的 C 程式


在給定的矩陣中,如果大多數元素為零,那麼我們就稱之為稀疏矩陣。示例 - 3 x 3 矩陣

1 1 0
0 0 2
0 0 0

在這個矩陣中,大多數元素為零,所以它是一個稀疏矩陣。

問題

檢查一個矩陣是否是稀疏矩陣。

解決方案

  • 我們假設矩陣中的零元素比 (行數 * 列數)/2 多。

  • 那麼,矩陣是一個稀疏矩陣,否則不是。

程式

以下是檢查給定矩陣是否是稀疏矩陣的程式 -

 線上演示

#include<stdio.h>
#include<stdlib.h>
int main(){
   int row,col,i,j,a[10][10],count = 0;
   printf("Enter row
");    scanf("%d",&row);    printf("Enter Column
");    scanf("%d",&col);    printf("Enter Element of Matrix1
");    for(i = 0; i < row; i++){       for(j = 0; j < col; j++){          scanf("%d",&a[i][j]);       }    }    printf("Elements are:
");    for(i = 0; i < row; i++){       for(j = 0; j < col; j++){          printf("%d\t",a[i][j]);       }       printf("
");    }    /*checking sparse of matrix*/    for(i = 0; i < row; i++){       for(j = 0; j < col; j++){          if(a[i][j] == 0)             count++;       }    }    if(count > ((row * col)/2))       printf("Matrix is a sparse matrix
");    else       printf("Matrix is not sparse matrix
"); }

輸出

當執行上述程式時,它將產生以下結果 -

Run 1:
Enter row
3
Enter Column
2
Enter Element of Matrix1
1 0 2 0 2 0
Elements are:
1 0
2 0
2 0
Matrix is not sparse matrix
Run 2:
Enter row
3
Enter Column
2
Enter Element of Matrix1
1 0 0 0 0 0
Elements are:
1 0
0 0
0 0
Matrix is a sparse matrix

更新於: 2021-03-24

38K+ 檢視

開啟你的 職業生涯

完成課程,獲得認證

開始學習
廣告
© . All rights reserved.