희소행렬 c++언어로 구현

#inlcude <iostream>

using namespace std;

int main()
{

//spareMatris of class 5 x 6 with non-zero values

int spareMatrix[5][6]
{
  {0, 0, 0, 0, 9, 0},
  {0, 8, 8, 8, 8, 8},
  {4, 0, 0, 2, 0, 0},
  {0, 0, 0 ,0, 0, 5},
  {0, 0, 2, 0, 0, 0}
};

// Finding total non-zero values in the spareMatrix

int size=0;
for (int row=0; row<5; row++)
 for (int column=0; column<6; column++)
  if (spareMatrix[row][column]!=0;)
  size++;
  
// Defining result Matrix 
int resultMatrix[3][size];

//Generating result Matrix
int k = 0;
for (int row=0; row<5; row++)
 for (int column=0; column<6; column++)
  if (spareMatrix[row][column] != 0)
  {
    resultMatrix[0][k] = row;
    resultMatrix[1][k] = column;
    resultMatrix[2][k] = spareMatrix[row][column];
    k++;
  }
  
//Displaying result matrix
cout<<"Triplet Representation : " <<endl;
for (int row=0; row<3; row++)
{
  for (int column =0; column<size; column++)
    cout<<resultMatrix[row][column]<<"";
    
    cout<<endl;
    }
    return 0;
  }
  

좋은 웹페이지 즐겨찾기