数组的旋转实例化-----求评论哦

来源:互联网 发布:数据结构与算法笔试 编辑:程序博客网 时间:2024/05/22 14:52
/*
数组元素变化:旋转:


程序要求:
将数组中的元素旋转90度


实现:
1.先输出一遍了数组的数据;


2.然后进行旋转的操作:
a将数组的值放在table2中进行保存,
b怎样保存?:将原来的第0行0列的数据转化到第8行第0列即该句可以写为:table2[j][i]=table[i][8-j];
c然后就是把数组table2中的数据复制给数组table实现了数组的旋转


注意:
1.for循环中输出时输出语句的位置要正确;
2.要用字符串的形式实现数组行的整体化


*/




class  Day0924_Table
{
static int table[][]=
{
{0,21,32,45,56,61,71,83,98},
{1,34,36,42,58,45,74,87,74},
{2,43,34,56,55,65,75,88,79},
{3,56,32,45,58,66,72,86,85},
{4,34,34,55,45,67,74,86,86},
{5,34,32,45,55,68,74,84,45},
{6,21,35,88,58,68,71,85,65},
{7,41,55,56,81,69,74,83,56},
{8,41,56,48,57,69,75,81,54}
};//定义一个九行九列的数组,接下来对该数组进行操作
static int table2[][]=new int[9][9];//声明第二个数组也为九行九列
public static void main(String[] args) 
{
int i,j;
String str=new String();
System.out.println("旋转前的数组为:");//for循环实现当前数组的输出
for (i=0;i<9 ;i++ )
{
str="";
for (j=0;j<9 ;j++ )
{
str=str+" "+table[i][j];//从数组的独立个体到字符串的实现
}
System.out.println(str);//注意输出语句的位置,只有放在第一层for循环里才能实现数组的完整输出
}
//实现数组的旋转90度的操作过程
for (i=0;i<9 ;i++ )
{
for (j=0;j<9 ;j++ )
{
table2[j][i]=table[i][8-j];
/*可以拿出一个列的数值研究其变换的规律如:第0行第8列要变化成第0行第0列;
将实现旋转的数组先保存在table2中
--------------------------------------------------------------------
如果想让数组左右调换的话就把该句改为table[i][j]=table2[i][8-j];*/
}
}
//将数组table2赋值给数组table
for (i=0;i<9;i++ )
{
for (j=0;j<9 ;j++ )
{
table[i][j]=table2[i][j];
}
}
System.out.println("数组旋转后为:");
for (i=0;i<9 ;i++ )

str="";
for (j=0;j<9 ;j++ )
{
str=str+" "+table[i][j];//转化成字符串的形式以便于整行的输出
}
System.out.println(str);//输出变化后的数组
}
}
}
原创粉丝点击