zoukankan      html  css  js  c++  java
  • 03-稀疏矩阵

    二维数组表格内容

    为了提高内存使用效率,压缩表示

     

    压缩,是将有效的数据保存下来,上述中无效的数据直接进行了抛弃,而现实中,往往会将重复的数据视为一个有效数据存储,在上述结构中稍作修改即可实现。

     

    #include <iostream>

    using namespace std; 

     

    void printDepress(int arr[][3])

    {

        cout<<"------"

            <<arr[0][0]<<" "

            <<arr[0][1]<<" "

            <<arr[0][2]<<"----"<<endl;

        for (int i=1; i<=arr[0][2]; ++i) {

            for (int j=0; j<3; ++j) {

                cout<<arr[i][j]<<" ";

            }

            cout<<endl;

        }

    }

     

    int main()

    {

        int data[5][10] = {

            0,0,1,0,0,0,0,0,0,0,

            0,0,0,9,0,0,0,0,0,0,

            0,0,0,0,0,2,0,0,0,0,

            0,0,0,0,3,0,0,0,0,0,

            0,0,0,0,0,0,0,6,0,0

        };

        int count = 0;

        int depress[20][3];

        depress[0][0] = 5;

        depress[0][1] = 10;

        for (int row=0; row<5; ++row) {

            for (int col=0; col<10; ++col) {

                if (data[row][col] != 0) {

                    ++count;

                     depress[count][0] = row;

                    depress[count][1] = col;

                    depress[count][2] = data[row][col];

                }

            }

        }

        // 有效数据个数

        depress[0][2] = count;

        printDepress(depress);

        return 0;

    }

     

    结果:

    ------5 10 5----

    0 2 1 

    1 3 9 

    2 5 2 

    3 4 3 

    4 7 6 

    Program ended with exit code: 0

     

     

     

     

     

     

     

     

     

     

     

     

     

     

     

  • 相关阅读:
    C-二维数组,多维数组
    C-冒泡排序,选择排序,数组
    C语言的学习-基础知识点
    设置程序图标-初识IOS
    UIActivityIndicatorView-初识IOS
    生命周期-初识IOS
    机器学习
    开源的python机器学习模块
    基于Python使用scrapy-redis框架实现分布式爬虫 注
    Scrapy研究探索(六)——自动爬取网页之II(CrawlSpider)
  • 原文地址:https://www.cnblogs.com/sharpfeng/p/5141962.html
Copyright © 2011-2022 走看看