螺旋矩阵和蛇形矩阵
来源:互联网 发布:老炮儿网络剧全集 编辑:程序博客网 时间:2024/06/03 21:05
<pre name="code" class="cpp">//螺旋矩阵
#include <iostream>using namespace std;/*请输入2维矩阵的行数n:41 2 3 412 13 14 511 16 15 610 9 8 7*/int main(){ int n; cout<<"请输入2维矩阵的行数n:"; cin>>n; int a[n][n]={0}; int x=0,y=0; int num=1;//从1开始的矩阵 int c=0;//记录螺旋数 while(num<=n*n){ x=0;y=0;//每轮螺旋完毕重新初始化x,y for(x+=c,y+=c;y<n-c;y++)//从左向右 { if(num>n*n) break; a[x][y] = num++; } for(y--,x=x+1;x<n-c;x++){//从上到下 if(num>n*n) break; a[x][y] = num++; } for(x--,y=y-1;y>=c;y--){//从右向左 if(num>n*n) break; a[x][y] = num++; } for(y++,x=x-1;x>c;x--){//从下到上 if(num>n*n) break; a[x][y] = num++; } c++;//一次螺旋结束,螺旋数++ } //打印矩阵 for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cout<<a[i][j]<<"\t"; } cout<<endl; } return 0;}
//蛇形矩阵
<pre name="code" class="cpp">#include <iostream>#include <string>using namespace std;/*请输入二维方阵的行列数目:41 3 4 102 5 9 116 8 12 157 13 14 16*/int main(){ int n; cout<<"请输入二维方阵的行列数目:"; cin>>n; int a[n][n] = {0}; int k =1,i=0,j=0; for(int i=0;i<n;i++){//上三角矩阵+对角线 if(i%2==0) { for(int j=0;j<=i;j++) a[j][i-j]=k++; } else{ for(int j=i;j>=0;j--) a[j][i-j]=k++; } } for(int i=1;i<n;i++){//下三角矩阵 for(int j=n-1;j>=n-i;j--) a[i][j]=n*n+1-a[n-i-1][n-j-1]; } for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cout<<a[i][j]<<"\t"; } cout<<endl; } return 0;}
0 0
- 螺旋矩阵和蛇形矩阵
- 蛇形矩阵 和螺旋矩阵
- 螺旋矩阵和蛇形矩阵
- 蛇形矩阵与螺旋矩阵
- 蛇形矩阵(螺旋矩阵)
- 数组——蛇形矩阵、螺旋矩阵
- codevs1160-蛇形矩阵(螺旋矩阵)
- 蛇形螺旋矩阵的生成和遍历 Spiral Matrix
- 蛇形矩阵,回环矩阵,数字螺旋矩阵的PHP实现
- 矩阵填数-倒填、螺旋、蛇形
- [经典面试题]蛇形矩阵(螺旋矩阵)
- 数据结构数组相关算法和螺旋,蛇形,拉丁矩阵的实现
- 蛇形矩阵
- 蛇形矩阵
- 蛇形矩阵
- 蛇形矩阵
- 蛇形矩阵
- 蛇形矩阵
- 树、森林、二叉树的转换
- Python re模块
- jQuery插件开发精品教程,让你的jQuery提升一个台阶
- js长轮询与短轮询的简单理解
- Android官方开发文档Training系列课程中文版:分享文件之配置文件共享
- 螺旋矩阵和蛇形矩阵
- 深度XP完美精简版 (适合低配置电脑)——迅雷
- android多媒体开发笔记
- c++实验3-个人所得税计算器
- gitignore忽略规则
- 蓝牙cc2540 开发问题
- C++作业3
- springmvc 页面和后台传值乱码问题
- C++第3次上机实验-个人所得税计算器