⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 shift.java

📁 Java 2 程序设计实用教程(第2版)[程序源代码]实验
💻 JAVA
字号:
//【习2.19】  循环移位方阵。
//采用一维数组,将数组看成环形。
/*
对于给定的一个数据元素序列,如{0,1,2,3,4},输出如下形式的循环移位方阵:
0  1  2  3  4  
1  2  3  4  0  
2  3  4  0  1  
3  4  0  1  2  
4  0  1  2  3
*/

public class Shift
{
    public static void main(String args[]) 
    {
        int table[] = {0,1,2,3,4}; //{7,4,8,9,1,5};
        
        System.out.println("左移:");
        for (int i=0;i<table.length;i++)
        {
            for (int j=0;j<table.length;j++)
                System.out.print(table[(i+j)%table.length]+"  ");
            System.out.println();
        }

        System.out.println("\n左移:");
        for (int i=0;i<table.length;i++)
        {
            int j=i;
            do
            {
                System.out.print(table[j]+"  ");
                j=(j+1)%table.length;
            }while (j!=i);
            System.out.println();
        }

        System.out.println("\n右移方案一:");
        for (int i=table.length-1;i>=0;i--)
        {
            int j=i;
            do
            {
                System.out.print(table[j]+"  ");
                j=(j+1)%table.length;
            }while (j!=i);
            System.out.println();
        }

        System.out.println("\n右移方案二:");
        int i=0;
        do
        {
            int j=i;
            do
            {
                System.out.print(table[j]+"  ");
                j=(j+1)%table.length;
            }while (j!=i);
            System.out.println();
            i=(i-1+table.length)%table.length;
        }while(i!=0);
    }
}

/* 
程序运行结果如下:
左移:
0  1  2  3  4  
1  2  3  4  0  
2  3  4  0  1  
3  4  0  1  2  
4  0  1  2  3  

左移:
0  1  2  3  4  
1  2  3  4  0  
2  3  4  0  1  
3  4  0  1  2  
4  0  1  2  3  

右移方案一:
4  0  1  2  3  
3  4  0  1  2  
2  3  4  0  1  
1  2  3  4  0  
0  1  2  3  4  

右移方案二:
0  1  2  3  4  
4  0  1  2  3  
3  4  0  1  2  
2  3  4  0  1  
1  2  3  4  0  


左移:
7  4  8  9  1  5
4  8  9  1  5  7
8  9  1  5  7  4
9  1  5  7  4  8
1  5  7  4  8  9
5  7  4  8  9  1

右移方案一:
5  7  4  8  9  1
1  5  7  4  8  9
9  1  5  7  4  8
8  9  1  5  7  4
4  8  9  1  5  7
7  4  8  9  1  5

右移方案二:
7  4  8  9  1  5
5  7  4  8  9  1
1  5  7  4  8  9
9  1  5  7  4  8
8  9  1  5  7  4
4  8  9  1  5  7

*/

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -