【 Algorithm】顺序打印矩阵——美团四面
来源:互联网 发布:必向东java 编辑:程序博客网 时间:2024/04/30 01:07
/********************************顺时针打印矩阵:思路:1.首先判断循环条件:每次一圈开始时,左上角横纵坐标一样,所以可以作为循环条件col>2*start,row>2*start2.打印每一圈 A.第一步总是要打的 B.第二步需要有两行才进行 C.第三步至少两行两列 D.第四步至少三行两列***********************************/#include "stdafx.h"#include<iostream>using namespace std;void printMatrixInCircle(int ** number,int cols,int rows,int start);void PrintMatrix(int ** number,int rows,int cols){if(number == NULL || rows<0 || cols<0)return;int start = 0;while(cols > start*2 && rows > start*2 ){printMatrixInCircle(number,cols,rows,start);start++;}}void printMatrixInCircle(int ** number,int cols,int rows,int start){int endX = cols-1-start;int endY = rows-1-start;//打印第一步for(int i = start;i<=endX;i++){cout << number[start][i];}cout <<endl;//打印第二步if(start < endY){for(int i = start+1;i <= endY;i++)cout << number[i][endX];}cout <<endl;//打印第三步if(start<endX && start <endX){for(int i = endX-1;i>=start;i--)cout << number[endY][i];}cout <<endl;//打印第四步if(start < endX && start < endY - 1){for(int i = endY-1;i>start;i--)cout << number[i][start];}}int _tmain(int argc, _TCHAR* argv[]){int n ;cin >>n;int ** arr=new int*[n];for(int i=0;i<n;i++){arr[i] = new int [n];}cin.clear();for(int i = 0;i<n;i++){for(int j = 0;j<n;j++){cin >>arr[i][j];}}PrintMatrix(arr,n,n);system("pause");return 0;}
0 0
- 【 Algorithm】顺序打印矩阵——美团四面
- 面试题20—顺序打印矩阵
- 顺序打印矩阵
- 顺序打印矩阵
- 逆时针顺序的螺旋矩阵打印
- 回转顺序打印矩阵的改进算法
- 打印矩阵N,按顺序增加
- 打印矩阵——网易有道试题
- 《剑指offer》——顺时针打印矩阵
- 《剑指offer》——顺时针打印矩阵
- 经典算法——顺时针打印矩阵
- 剑指offer——顺时针打印矩阵
- 剑指offer——顺时针打印矩阵
- 剑指offer——顺时针打印矩阵
- 剑指offer——顺时针打印矩阵
- 剑指offer——顺时针打印矩阵
- 编程练习——顺时针打印矩阵
- 顺时针打印矩阵——20
- 色纺二十个认同感人的很多人挺好他与和大统华太阳花太费劲
- python inspect模块解析--提供自省功能
- VC++ 安装驱动 源码
- jquery 实现点击加载更多
- rem em px 区别
- 【 Algorithm】顺序打印矩阵——美团四面
- iOS微信开放平台
- perl滑动匹配
- struts2防止页面重复提交的解决方案
- python中迭代器和生成器
- Ubuntu 14.04 Nydus VPN配置
- 一个字符串中包含另一个字符串所有字符的最短子串
- SVN服务器搭建和使用(一)
- 金融相关术语和产品