用c#写一个内螺旋算法
时间: 2024-04-15 07:32:04 浏览: 27
以下是使用C#编写的一个简单的内螺旋算法示例:
```csharp
using System;
class Program
{
static void Main(string[] args)
{
int n = 5; // 螺旋的维度
int[,] spiral = GenerateSpiral(n);
// 打印螺旋矩阵
for (int i = 0; i < n; i++)
{
for (int j = 0; j < n; j++)
{
Console.Write(spiral[i, j] + "\t");
}
Console.WriteLine();
}
}
static int[,] GenerateSpiral(int n)
{
int[,] spiral = new int[n, n];
int num = 1; // 当前要填充的数字
int rowStart = 0, rowEnd = n - 1;
int colStart = 0, colEnd = n - 1;
while (num <= n * n)
{
// 从左到右
for (int i = colStart; i <= colEnd; i++)
{
spiral[rowStart, i] = num++;
}
rowStart++;
// 从上到下
for (int i = rowStart; i <= rowEnd; i++)
{
spiral[i, colEnd] = num++;
}
colEnd--;
// 从右到左
for (int i = colEnd; i >= colStart; i--)
{
spiral[rowEnd, i] = num++;
}
rowEnd--;
// 从下到上
for (int i = rowEnd; i >= rowStart; i--)
{
spiral[i, colStart] = num++;
}
colStart++;
}
return spiral;
}
}
```
这个算法会生成一个 `n` x `n` 的螺旋矩阵,并将数字从1开始按照内螺旋的顺序填充到矩阵中。在上述示例中,我们使用 `n = 5` 来生成一个5x5的螺旋矩阵,并将其打印出来。你可以根据自己的需求更改 `n` 的值来生成不同维度的螺旋矩阵。
相关推荐
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![-](https://csdnimg.cn/download_wenku/file_type_column_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)