打印蛇形矩阵
来源:互联网 发布:淘宝自动回复语大全 编辑:程序博客网 时间:2024/05/16 00:27
题目来自小米校招笔试题
题目:打印蛇形矩阵
思路:一次打印一个斜杠
代码:
#include <iostream>using namespace std;void PrintUp(int **pArrMatrix,int nCurX,int nCurY,int nLen,int& nCount);void PrintDown(int **pArrMatrix,int nCurX,int nCurY,int nLen,int& nCount);void PrintDown(int **pArrMatrix,int nCurX,int nCurY,int nLen,int& nCount){//出口if (nCurX >= nLen || nCurX < 0 || nCurY >= nLen || nCurY < 0){return;}//赋值for (;nCurX < nLen && nCurY >= 0;nCurX++,nCurY--){pArrMatrix[nCurX][nCurY] = nCount++;}if (nCurX <= nLen - 1)// 处理上三角{PrintUp(pArrMatrix,nCurX,nCurY + 1,nLen,nCount);}else{PrintUp(pArrMatrix,nCurX - 1,nCurY + 2,nLen,nCount);}}void PrintUp(int **pArrMatrix,int nCurX,int nCurY,int nLen,int& nCount){//出口if (nCurX >= nLen || nCurX < 0 || nCurY >= nLen || nCurY < 0){return;}//赋值for (;nCurX >= 0 && nCurY < nLen;nCurX--,nCurY++){pArrMatrix[nCurX][nCurY] = nCount++;}if (nCurY <= nLen - 1)//上三角{PrintDown(pArrMatrix,nCurX + 1,nCurY,nLen,nCount);}else{PrintDown(pArrMatrix,nCurX + 2,nCurY - 1,nLen,nCount);}}void Print(int nLen)//主函数{int nCount = 1;int **pArrMatrix = new int *[nLen];for (int i = 0;i < nLen;i++){pArrMatrix[i] = new int[nLen];memset(pArrMatrix[i],0,sizeof(int) * nLen);}PrintDown(pArrMatrix,0,0,nLen,nCount);//输出for (int i = 0;i < nLen;i++){for (int j = 0;j < nLen;j++){cout<<pArrMatrix[i][j]<<" ";}cout<<endl;}}
- C++ 打印蛇形矩阵
- Java打印蛇形矩阵
- 打印输出蛇形矩阵
- 打印蛇形矩阵
- 打印蛇形矩阵
- 打印蛇形矩阵-题解
- [腾讯]打印蛇形矩阵
- 打印蛇形矩阵
- 打印蛇形矩阵
- 打印蛇形矩阵
- 打印蛇形矩阵
- 蛇形打印矩阵
- 打印蛇形矩阵
- 打印蛇形矩阵
- 打印蛇形矩阵
- 20.蛇形矩阵打印
- 不用数组打印蛇形矩阵
- (C#)打印蛇形正方形矩阵
- Cocos2D-X教程(IOS以及Android):第一步
- js模仿物理中的自由落体现象
- Astronomy poj 3101 数论 分数的最小公倍数 Cherish the memory of my broken heart
- 二手房贷款计算器
- struts2 文件上传实例
- 打印蛇形矩阵
- Android HTTPpost 提交数据到服务器
- 那些令你叹为观止的404页面
- 动态规划之最长公共子序列
- 求三个整数中的最大值
- cloudfoundry之router源码分析
- 深入浅出Symfony2 - 结合MongoDB开发LBS应用
- 也谈应用程序级的同步、异步、阻塞、非阻塞
- 证书创建工具 (Makecert.exe)