稀疏矩阵的 C 程序

在给定的矩阵中,当大多数元素为零时,我们称其为稀疏矩阵。示例 - 3 x3 矩阵

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\n");

   scanf("%d",&row);

   printf("Enter Column\n");

   scanf("%d",&col);

   printf("Enter Element of Matrix1\n");

   for(i = 0; i < row; i++){

      for(j = 0; j < col; j++){

         scanf("%d",&a[i][j]);

      }

   }

   printf("Elements are:\n");

   for(i = 0; i < row; i++){

      for(j = 0; j < col; j++){

         printf("%d\t",a[i][j]);

      }

      printf("\n");

   }

   /*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 \n");

   else

      printf("Matrix is not sparse matrix\n");

}

输出结果

执行上述程序时,会产生以下结果 -

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

以上是 稀疏矩阵的 C 程序 的全部内容, 来源链接: utcz.com/z/341451.html

回到顶部