c#递归实现螺旋数组
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
namespace ConsoleApplication5
{
class Program
{
public static int[,] a = new int[7, 7];
public static int count = 0;
public static int row = 0;
public static int col = 0;
public static int RowMax = 6;
public static int RowMin = 0;
public static int ColMax = 6;
public static int ColMin = 0;
public static int shangzuo1 = 0;
public static bool c = false;
public static int p = 0;
public static int q = 0;
static void Main(string[] args)
{
digui();
int n = 7;
if(n%2!=0)
a[n / 2, n/ 2] = n*n;
for (int i = 0; i < 7; i++)
for (int j = 0; j < 7; j++)
{
Console.Write(a[i, j] + "\t");
if (j == 6)
Console.WriteLine();
}
Console.ReadLine();
}
public static void digui()
{
while (p == 0 && q == 0)
{
count++;
if (count > 49)
return;
if (c==true)
{
col++;
row++;
ColMin++;
ColMax--;
RowMin++;
RowMax--;
c = false;
}
if (col > ColMax)
{
q = 1;
col--;
count--;
if(count<49)
digui();
}
else
{
a[row, col] = count;
if (count == 49)
return;
col++;
}
}
while (p == 0 && q == 1)
{
count++;
if (count > 49)
return;
row++;
if (row > RowMax)
{
p = 1;
row--;
count--;
if (count < 49)
digui();
}
else
{
a[row, col] = count;
if (count == 49)
return;
}
}
while (p == 1 && q == 1)
{
count++;
if (count >49)
return;
col--;
if (col < ColMin)
{
q = 0;
col++;
count--;
if (count <49)
digui();
}
else
{
a[row, col] = count; if (count == 49)
return;
}
}
while (p == 1 && q == 0)
{
count++;
if (count >49)
return;
row--;
if (row < RowMin)
{
p = 0;
c = true;
row++;
count-=2;
if (count <49)
digui();
}
else
{
if(row>RowMin)
a[row, col] = count; if (count == 49)
return;
}
}
}
}
}
c#递归实现螺旋数组的更多相关文章
- 每天一个JavaScript实例-递归实现反转数组字符串
<!DOCTYPE html> <html> <head> <meta http-equiv="Content-Type" content ...
- PHP实现螺旋矩阵(螺旋数组)
今天碰到一个比较有意思的问题, 就是把A到Y这25个字母以下面的形式输出出来 A B C D E P Q R S F O X Y T G N W V U H M L K J I 问题很有意思,就是转圈 ...
- C语言 · 递归倒置字符数组
算法提高 递归倒置字符数组 时间限制:1.0s 内存限制:512.0MB 问题描述 完成一个递归程序,倒置字符数组.并打印实现过程 递归逻辑为: 当字符长度等于1时,直接返回 否则, ...
- 用java实现螺旋数组
接收数组的行数和列数,返回正序和倒序的螺旋数组 package cn.baokx; public class Test { public static void main(String[] args) ...
- Java实现 蓝桥杯VIP 算法提高 递归倒置字符数组
算法提高 递归倒置字符数组 时间限制:1.0s 内存限制:512.0MB 问题描述 完成一个递归程序,倒置字符数组.并打印实现过程 递归逻辑为: 当字符长度等于1时,直接返回 否则,调换首尾两个字符, ...
- [leetcode]54. Spiral Matrix2生成螺旋数组
import java.util.Arrays; /** * Created by lvhao on 2017/7/6. * Given an integer n, generate a square ...
- vue递归过滤树结构数组
let arr=[{ title:'1', key:'1', type:0, children:[{ title:'1-1', key:'1-1', type:0, }] },{ title:'2', ...
- 基于Visual C++2013拆解世界五百强面试题--题3-打印螺旋数组
请用C语言实现 输入N,打印N*N矩阵 比如 N = 3, 打印: 1 2 3 8 9 4 7 6 5 N = 4, 打印 1 2 3 4 12 13 14 5 11 16 ...
- php递归实现一维数组转为指定树状结构 --- 省市区处理
### 这两天脑壳痛,一时短路,想不到准备利用递归实现这个需求,最后还是要请教同事,回来自己在实现了一遍,并记录下来 ### 原数据: // { // 广东省: { // 广州市: [ // &quo ...
随机推荐
- angularjs探秘<一>认识angularjs
首先聊聊angularjs是啥. 首先AngularJS 是一个 JavaScript 框架.(PS:其实就是外部引用的js文件) 所以AngularJS的使用依然是外部引用js文件. 附上引用地址 ...
- 局部敏感哈希-Locality Sensitivity Hashing
一. 近邻搜索 从这里开始我将会对LSH进行一番长篇大论.因为这只是一篇博文,并不是论文.我觉得一篇好的博文是尽可能让人看懂,它对语言的要求并没有像论文那么严格,因此它可以有更强的表现力. 局部敏感哈 ...
- 35. CentOS-6.3安装拼音输入法
安装方法: su root yum install "@Chinese Support" // 安装中文输入法 exit 装好后,在“系统-->首选项”就会看到有“ ...
- restfull 风格 参考 https://blog.csdn.net/jaryle/article/details/52141097
https://www.cnblogs.com/xiaoxian1369/p/4332390.html :
- leetcode506
public class Solution { public string[] FindRelativeRanks(int[] nums) { var list = nums.OrderByDesce ...
- 使用AngularJS处理单选框和复选框的简单方法
在复选框中,可以绑定ng-model给false或者true值,即可选中或清除选中状态 如下图 而在单选框里就相对复杂一点,单选框要选中一个,就要给相同的name属性,然后绑定相同的ng-model, ...
- Jenkins + testNg + maven 项目持续集成
搞了一整天,梳理下关键点: 1.项目的pom.xml要配置插件,同时指定testng.xml文件的位置.就被这个卡了好久 <properties> <maven-surefire-p ...
- springboot测试时 SpringApplicationConfiguration注解不能用
测试时,@SpringApplicationConfiguration(classes = Application.class) 报错,注解不能导入. 在学习spring boot时,按照文档学习时测 ...
- Syncthing搭建
现在貌似只有windows和linux比较号装. 安装 先从官网下载好Windows 32位版(我本本对应的系统版本)的Syncthing,解压后可以看到如下文件结构 Syncthing文件结构 ...
- spring JPA分页排序条件查询
@RequestMapping("/listByPage") public Page<Production> listByPage(int page, int size ...