`
MouseLearnJava
  • 浏览: 465853 次
  • 性别: Icon_minigender_1
  • 来自: 杭州
社区版块
存档分类
最新评论

环形矩阵

    博客分类:
  • Java
阅读更多
/**
 * 
 * 
 1 1 1 
 1 0 1 
 1 1 1 

 2  2  2  2  2  
 2  1  1  1  2  
 2  1  0  1  2  
 2  1  1  1  2  
 2  2  2  2  2  

 3  3  3  3  3  3  3  
 3  2  2  2  2  2  3  
 3  2  1  1  1  2  3  
 3  2  1  0  1  2  3  
 3  2  1  1  1  2  3  
 3  2  2  2  2  2  3  
 3  3  3  3  3  3  3   
 *
 */
public class SymmetricArray {
 public static void main(String[] args) {
  for (int n = 1; n < 10; n++) {
   System.out.println();
   SymmetricArray sa = new SymmetricArray();
   sa.printArray(sa.populateArray(n), 2 * n + 1);
   System.out.println();
  }
 }
 private int[][] populateArray(int expectedNumber) {
  int length = expectedNumber * 2 + 1;
  int[][] array = new int[length][length];
  for (int i = expectedNumber; i >= 0; i--) {
   for (int j = expectedNumber - i; j < expectedNumber + i + 1; j++) {
    array[j][expectedNumber - i] = array[expectedNumber - i][j] = i;
    array[j][expectedNumber + i] = array[expectedNumber + i][j] = i;
   }
  }
  return array;
 }
 /**
  * 打印二维数组的内容。
  * 
  * @param array
  * @param expectedNumber
  */
 public void printArray(int[][] array, int expectedNumber) {
  for (int i = 0; i < expectedNumber; i++) {
   for (int j = 0; j < expectedNumber; j++) {
    System.out.print(appendSpace(array[i][j], expectedNumber));
   }
   System.out.println();
  }
 }
 /**
  * 为了保证数据输出时能够对齐,添加一些空格.
  */
 private String appendSpace(int value, int expectedNumber) {
  int maxValue = expectedNumber * expectedNumber;
  int maxLength = String.valueOf(maxValue).length();
  int currentValueLength = String.valueOf(value).length();
  StringBuilder sb = new StringBuilder();
  sb.append(value);
  for (int i = maxLength; i > currentValueLength; i--) {
   sb.append(" ");
  }
  sb.append(" ");
  return sb.toString();
 }
}
输出结果:


1 1 1
1 0 1
1 1 1

2  2  2  2  2 
2  1  1  1  2 
2  1  0  1  2 
2  1  1  1  2 
2  2  2  2  2 

3  3  3  3  3  3  3 
3  2  2  2  2  2  3 
3  2  1  1  1  2  3 
3  2  1  0  1  2  3 
3  2  1  1  1  2  3 
3  2  2  2  2  2  3 
3  3  3  3  3  3  3 

4  4  4  4  4  4  4  4  4 
4  3  3  3  3  3  3  3  4 
4  3  2  2  2  2  2  3  4 
4  3  2  1  1  1  2  3  4 
4  3  2  1  0  1  2  3  4 
4  3  2  1  1  1  2  3  4 
4  3  2  2  2  2  2  3  4 
4  3  3  3  3  3  3  3  4 
4  4  4  4  4  4  4  4  4 

5   5   5   5   5   5   5   5   5   5   5  
5   4   4   4   4   4   4   4   4   4   5  
5   4   3   3   3   3   3   3   3   4   5  
5   4   3   2   2   2   2   2   3   4   5  
5   4   3   2   1   1   1   2   3   4   5  
5   4   3   2   1   0   1   2   3   4   5  
5   4   3   2   1   1   1   2   3   4   5  
5   4   3   2   2   2   2   2   3   4   5  
5   4   3   3   3   3   3   3   3   4   5  
5   4   4   4   4   4   4   4   4   4   5  
5   5   5   5   5   5   5   5   5   5   5  

6   6   6   6   6   6   6   6   6   6   6   6   6  
6   5   5   5   5   5   5   5   5   5   5   5   6  
6   5   4   4   4   4   4   4   4   4   4   5   6  
6   5   4   3   3   3   3   3   3   3   4   5   6  
6   5   4   3   2   2   2   2   2   3   4   5   6  
6   5   4   3   2   1   1   1   2   3   4   5   6  
6   5   4   3   2   1   0   1   2   3   4   5   6  
6   5   4   3   2   1   1   1   2   3   4   5   6  
6   5   4   3   2   2   2   2   2   3   4   5   6  
6   5   4   3   3   3   3   3   3   3   4   5   6  
6   5   4   4   4   4   4   4   4   4   4   5   6  
6   5   5   5   5   5   5   5   5   5   5   5   6  
6   6   6   6   6   6   6   6   6   6   6   6   6  

7   7   7   7   7   7   7   7   7   7   7   7   7   7   7  
7   6   6   6   6   6   6   6   6   6   6   6   6   6   7  
7   6   5   5   5   5   5   5   5   5   5   5   5   6   7  
7   6   5   4   4   4   4   4   4   4   4   4   5   6   7  
7   6   5   4   3   3   3   3   3   3   3   4   5   6   7  
7   6   5   4   3   2   2   2   2   2   3   4   5   6   7  
7   6   5   4   3   2   1   1   1   2   3   4   5   6   7  
7   6   5   4   3   2   1   0   1   2   3   4   5   6   7  
7   6   5   4   3   2   1   1   1   2   3   4   5   6   7  
7   6   5   4   3   2   2   2   2   2   3   4   5   6   7  
7   6   5   4   3   3   3   3   3   3   3   4   5   6   7  
7   6   5   4   4   4   4   4   4   4   4   4   5   6   7  
7   6   5   5   5   5   5   5   5   5   5   5   5   6   7  
7   6   6   6   6   6   6   6   6   6   6   6   6   6   7  
7   7   7   7   7   7   7   7   7   7   7   7   7   7   7  

8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8  
8   7   7   7   7   7   7   7   7   7   7   7   7   7   7   7   8  
8   7   6   6   6   6   6   6   6   6   6   6   6   6   6   7   8  
8   7   6   5   5   5   5   5   5   5   5   5   5   5   6   7   8  
8   7   6   5   4   4   4   4   4   4   4   4   4   5   6   7   8  
8   7   6   5   4   3   3   3   3   3   3   3   4   5   6   7   8  
8   7   6   5   4   3   2   2   2   2   2   3   4   5   6   7   8  
8   7   6   5   4   3   2   1   1   1   2   3   4   5   6   7   8  
8   7   6   5   4   3   2   1   0   1   2   3   4   5   6   7   8  
8   7   6   5   4   3   2   1   1   1   2   3   4   5   6   7   8  
8   7   6   5   4   3   2   2   2   2   2   3   4   5   6   7   8  
8   7   6   5   4   3   3   3   3   3   3   3   4   5   6   7   8  
8   7   6   5   4   4   4   4   4   4   4   4   4   5   6   7   8  
8   7   6   5   5   5   5   5   5   5   5   5   5   5   6   7   8  
8   7   6   6   6   6   6   6   6   6   6   6   6   6   6   7   8  
8   7   7   7   7   7   7   7   7   7   7   7   7   7   7   7   8  
8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8  

9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9  
9   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   9  
9   8   7   7   7   7   7   7   7   7   7   7   7   7   7   7   7   8   9  
9   8   7   6   6   6   6   6   6   6   6   6   6   6   6   6   7   8   9  
9   8   7   6   5   5   5   5   5   5   5   5   5   5   5   6   7   8   9  
9   8   7   6   5   4   4   4   4   4   4   4   4   4   5   6   7   8   9  
9   8   7   6   5   4   3   3   3   3   3   3   3   4   5   6   7   8   9  
9   8   7   6   5   4   3   2   2   2   2   2   3   4   5   6   7   8   9  
9   8   7   6   5   4   3   2   1   1   1   2   3   4   5   6   7   8   9  
9   8   7   6   5   4   3   2   1   0   1   2   3   4   5   6   7   8   9  
9   8   7   6   5   4   3   2   1   1   1   2   3   4   5   6   7   8   9  
9   8   7   6   5   4   3   2   2   2   2   2   3   4   5   6   7   8   9  
9   8   7   6   5   4   3   3   3   3   3   3   3   4   5   6   7   8   9  
9   8   7   6   5   4   4   4   4   4   4   4   4   4   5   6   7   8   9  
9   8   7   6   5   5   5   5   5   5   5   5   5   5   5   6   7   8   9  
9   8   7   6   6   6   6   6   6   6   6   6   6   6   6   6   7   8   9  
9   8   7   7   7   7   7   7   7   7   7   7   7   7   7   7   7   8   9  
9   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   8   9  
9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9   9  
分享到:
评论

相关推荐

    环形矩阵的程序C++环境运行

    环形矩阵是一种特殊的矩阵结构,它的特点是元素按照圆形排列,而不是传统的行与列的线性方式。这种数据结构常用于解决一些特定的问题,比如数组的循环遍历、图像处理、游戏编程等。对于初学者来说,理解并实现环形...

    C++环形矩阵填充实现

    #include #include #include #include #include #include #include using namespace std; int main(void) { int n; while(cin &gt;&gt; n) { map&lt;int&gt; &gt; tbl; for(int i = 0; i &lt; n;... int

    c语言输出环形矩阵(自己写的,纯新手)

    自己写的,纯新人,发上来看看

    Return-type-matrix.rar_return_生成矩阵labview

    在LabVIEW编程环境中,回型矩阵(也称为环形矩阵)是一种特殊的数据结构,它具有特定的排列方式,数据在矩阵中的分布呈环状。这种矩阵类型常用于处理连续的数据流,例如在信号处理和数据传输中。"Return-type-matrix...

    回型矩阵填充代码

    回型矩阵,也被称为环形矩阵,是一种特殊的二维数组,其特点是元素的填充方式呈现出从中心向外环绕填充的模式。这种矩阵通常在编程问题中出现,例如数据存储、图像处理或者游戏开发等领域。理解并实现回型矩阵填充...

    omp_circle1.rar_omp_压缩传感

    在这个"omp_circle1.m"文件中,我们可以推测它可能包含一个MATLAB脚本,该脚本实现了使用OMP算法对"circle matrix"(环形矩阵)进行压缩传感处理的过程。环形矩阵是一种特殊的矩阵结构,它在傅里叶变换和其他信号...

    c#两个经典例子(矩阵)

    回形矩阵,也称为环形矩阵,是指一个矩阵,其从中心开始,沿着顺时针或逆时针方向向外扩展,直到填充整个矩阵。例如,一个3x3的回形矩阵可能是这样的: ``` 1 2 3 7 8 9 4 5 6 ``` 这个矩阵的输出顺序是从1开始,...

    控制流图,环形复杂度,矩阵,独立的路径集合

    控制流图、环形复杂度、矩阵和独立的路径集合 控制流图(Control Flow Graph,CFG)是一种有向图,它描述了程序中执行路径之间的关系。控制流图由节点和边组成,节点表示程序中的语句或基本块,而边则表示控制流的...

    PHP实现蛇形矩阵,回环矩阵及数字螺旋矩阵的方法分析

    回环矩阵,又称为环形矩阵,其填充方式是从左上角开始,按照上、右、下、左的顺序逐行填充,当行满后,继续填充下一行,但方向反转,如此反复。上述代码中的`snake()`函数实际上也实现了回环矩阵,因为它的填充规则...

    14初复试真题1

    6. **空间环形矩阵的最大值**:这个问题可以转化为求二维数组中的最大子矩阵和,可以采用动态规划或者Kadane算法来解决,考虑环形特性时,需要对边缘元素进行特殊处理。 这些知识点覆盖了计算机科学的基础理论、...

    光学环形谐振腔的偏振分析

    模型的建立也考虑了定向耦合器的耦合矩阵和直通矩阵,这些矩阵具体描述了光波如何在环形谐振腔中传播和能量分配。其中,耦合矩阵涉及到的插入损耗和耦合系数是描述定向耦合器性能的关键参数,它们决定了光波在不同...

    射频ADS微波HFSS相关 微波实验七 微波环形器.pdf

    - **理想环形器的散射矩阵**:理想环形器的散射矩阵描述了功率在各个端口间的传输关系,表现为非互异性,即输入端口1的功率只从端口2输出,输入端口2的功率从端口3输出,输入端口3的功率则从端口1输出。 - **环形...

    一种新型消防喷头的制作方法.docx

    * 多个所述限位槽为环形矩阵设置。 * 所述连接头与喷头本体之间为一体式结构。 * 所述稳固板上设有与滑腔连通的滑口,所述连接杆滑动插设在滑口内。 实施方式: 1. 本有用新型的实施例:一种新型消防喷头,包括...

    使用c++读取图像到二维矩阵

    在计算机视觉领域,图像通常被表示为二维矩阵,其中每个元素代表图像中的一个像素值。在C++中,我们可以利用OpenCV库来高效地读取和处理图像。OpenCV(Open Source Computer Vision Library)是一个强大的跨平台...

    GPU上循环矩阵的快速求逆算法.pdf

    循环矩阵是一种特殊类型的矩阵,其中每一行(或每一列)都是环形排列的。这种矩阵在信号处理、图像处理和机器学习等领域中有广泛的应用。 首先,我们将对循环矩阵的概念和性质进行介绍。循环矩阵可以被定义为一个...

    矩阵求逆的并行算法[整理版].doc

    CYCLIC算法则将矩阵划分为多个环形块,然后并行计算每个环形块的逆矩阵。两种算法都可以提高矩阵求逆的计算效率,但 BLOCK算法更加适合大规模矩阵的计算,而CYCLIC算法更加适合小规模矩阵的计算。 在矩阵求逆的并行...

    旋转木马3D环形特效

    1. **3D变换**:为了营造出立体的旋转效果,我们需要利用3D坐标系统和矩阵变换。在计算机图形学中,这通常通过CSS3的`transform`属性来实现,例如`rotateX()`、`rotateY()`和`rotateZ()`可以分别对元素进行X、Y、Z轴...

    spark上的分布式矩阵计算-顾荣

    SUMMA(Scalable Universal Matrix Multiplication Algorithm)是最广泛使用的并行矩阵乘法算法之一,它在网格或环形拓扑结构上表现良好,但在更一般的拓扑结构中可能表现不佳。 - **BFS/DFS(广度优先搜索/深度优先...

    很方便管理的环形菜单

    为了实现旋转效果,开发者可能运用了Matrix矩阵变换,通过对角度的计算和设置,让菜单项随着手指的滑动而旋转。 此外,考虑到Android的兼容性问题,开发者可能还使用了Support Library或者AndroidX库,以确保环形...

Global site tag (gtag.js) - Google Analytics