实现输出10*10以内的数字旋转方阵,如果需要修改输出的方阵的大小可以改变N的值

#include<iostream>
using namespace std;
const int  N= 10;
int dt[N][N] = { 0 };
void full(int number, int begin, int size);
int main()
{int n;cin >> n;full(1, 0, n);for (int i = 0; i < n; i++){for (int j = 0; j < n; j++)cout << dt[i][j] << '\t';cout << endl;}return 0;
}
void full(int number, int begin, int size)
{if (size == 0)return;if (size == 1){dt[begin][begin] = number;return;}int i, j;i = begin;j = begin;for (int k = 0; k < size - 1; k++){dt[i][j] = number;number++;i++;}for (int k = 0; k < size - 1; k++){dt[i][j] = number;number++;j++;}for (int k = 0; k < size - 1; k++){dt[i][j] = number;number++;i--;}for (int k = 0; k < size - 1; k++){dt[i][j] = number;number++;j--;}full(number, begin + 1, size - 2);
}

运行结果:

数字旋转方阵 c++数据结构相关推荐

  1. 数字旋转方阵c语言主函数,数据结构——递归求数字旋转方阵

    [数字旋转方阵问题] 问题描述:输出下图所示N×N(N≥1)的数字旋转方阵.要求:采用递归法实现. 提示:注意观察A.B.C.D四个区域. void FillInNum(int number, int ...

  2. 算法设计与分析:分治法输出数字旋转方阵

    分治法输出数字旋转方阵 数字旋转方阵如下图所示: 从下图可以看出,从左上角开始,逆时针放置每次增加1的数字,直到"旋转"到最里层终止. 分治:将这个矩阵填数之时一层一层地填进去,也 ...

  3. 递归-数字旋转方阵问题

    问题描述: 输出下图所示N×N(N≥1)的数字旋转方阵.要求:采用递归法实现. 提示:注意观察A.B.C.D四个区域. 核心思想: 先用数组a[i][j]存储数字num(从1至N2),然后打印. 递归 ...

  4. 数字旋转方阵问题-分治法

    分治法: 数字旋转方阵问题 #include<stdio.h> #include <iostream> #include<iomanip> using namesp ...

  5. 算法学习——数字旋转方阵

    分析题目 将N*N矩阵分为四个部分,A,B,C,D,对这四个部分依次填充,内层同理 步骤如下:(非递归算法) 定义全局二维数组用于存放矩阵 宏定义一个常量N 编写full()函数用于填充二维数组 对A ...

  6. 【计算机算法】递归——打印旋转方阵(正转及逆转)

    通过如下程序来打印旋转方阵 思想: 填充数组后通过控制输出的格式,就可以打印顺转.逆转的旋转方阵 #include<stdio.h> int a[100][100]; int m = 1; ...

  7. java编程之数字魔方(N阶数字魔方和数字旋转魔方)

    N阶数字魔方 原理: 定义一个奇数阶二维数组,把每个元素顺序填入不同的自然数,要求行列和对角线元素相加的结果相等. 效果图: 实现代码: import java.util.*; public clas ...

  8. 【应用】使用STM32单片机定时器的Encoder模式驱动数字旋转编码开关

    RZ-51 6合1扩展板原理图.pdf:https://download.csdn.net/download/ZLK1214/29016144https://download.csdn.net/dow ...

  9. 旋转方阵So easy

    在刷题的过程中,积累了矩阵的一些常见的操作,这里特点做一下笔记,以供后续进阶学习. 1. 基本操作 1.1 沿主对角线翻转方阵 代码实现: public void rotate(int[][] mat ...

最新文章

  1. [inside]MySQL 5.7 并行复制实现原理与调优
  2. antd 函数组件_react函数组件中引用antd<Form/>组件demo
  3. 系统设计:性能指标、伸缩性、扩展性、可用性、安全性
  4. 如何处理UI5一般性错误Cannot read property md of undefined
  5. 【优秀文章保存】webcollector抽取新闻正文
  6. 如何保证 HBase 服务的高可用?看看这份 HBase 可用性分析与高可用实践吧!
  7. 打车应用上马快递业务靠谱吗?
  8. 腾讯帝国十八年,被它借鉴过的产品都有哪些?
  9. android:ImageView--scaleType属性
  10. 苹果HomePod mini出现连接不上Wi-Fi怎么办?解决办法来啦!
  11. setInterval()与clearInterval()的用法
  12. VS系列之【 产品密钥 – 所有版本】
  13. 计算机老师一句话,40句感恩教师的一句话
  14. 软件升级 防火墙 飞塔_FortiGate软件版本升级
  15. 设计模式---002适配模式(转载自我的老师 Alley-巷子)
  16. cadence安装完怎么打开_为何cadence软件在虚拟机里安装成功了以后打不开
  17. Leetcode_NO199_二叉树的左视图,右视图
  18. DAO 中独特的通证经济
  19. windows下安装mingw-w64
  20. C语言画奥运五环以及五角星

热门文章

  1. git 命令 githup
  2. 自然数e的存在性证明.
  3. 学习Python不用愁,五个阶段助你快速拿高薪工作
  4. 关于ShareSDK在Xcode14上面发生错误的相关解决办法
  5. 分享森林火灾年鉴统计平台
  6. 8/25 matlab在小数点后某一位四舍五入,即保留几位小数
  7. RK3399之8250串口驱动
  8. 快速md5校验脚本linux,shell-更新文件并md5校验
  9. MSSQL2005转换成2000
  10. mysql xact abort,为什么在xact_abort打开时,Sql Server在raiserror之后继续执行?