如何在C ++中打印行明智的排序矩阵

时间:2013-07-05 09:32:53

标签: c++ sorting matrix multidimensional-array

我获得了一个2D数组,其中每一行都是单独排序的。我需要按排序顺序打印整个矩阵(升序)。任何人都可以告诉如何有效地做它和它的时间复杂性。如果您可以编码,请粘贴您的C ++代码。

1 个答案:

答案 0 :(得分:0)

此代码可能会有所帮助!

unsigned char arr[columnsize][rowsize];

unsigned char out[columnsize*rowsize];

for(unsigned int i=0; i<columnsize*rowsize; i++){
    char buffer=1;
    bool brk=false;
    for(unsigned int y=0; y<rowsize; y++){
        for(unsigned int x=0; x<columnsize; x++){
            if(arr[x][y] <= buffer){
                buffer = arr[x][y];
                arr[x][y] = 0;
                brk = true;
            }
            if(brk) break;
        }
        if(brk) break;
    }
    out[i] = buffer;
}