温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

顺时针打印矩阵

发布时间:2020-06-26 22:53:50 来源:网络 阅读:340 作者:小镇青苔 栏目:编程语言


    vector<int> clockwisePrint(vector<vector<int> > mat, int n, int m) {
      
        vector<int> ret;
        int i=0;
        int j=0;
        int startx=0;
        int starty=0;
        int endx=n-1;
        int endy=m-1;
        while(startx<=endx && starty<=endy){
           
            
            if(endy==starty){
                for(j=endy,i=startx;i<=endx;++i){
                	ret.push_back(mat[i][j]);
            	}
                return ret;
            }
            if(endx==startx){
                for(i=startx,j=starty;j<=endy;++j){
                	ret.push_back(mat[i][j]);
            	}
                return ret;
            }    
            for(i=startx,j=starty;j<=endy;++j){
                ret.push_back(mat[i][j]);
            }
            for(j=endy,i=startx+1;i<=endx;++i){
                ret.push_back(mat[i][j]);
            }
            for(i=endx,j=endy-1;j>=starty;--j){
                ret.push_back(mat[i][j]);
            }
            for(j=starty,i=endx-1;i>startx;--i){
                ret.push_back(mat[i][j]);
            }
            
            startx++;
            starty++;
            endx--;
            endy--;
                
        }
        return ret;
    }


向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI