回形遍历(算法)

来源:互联网 发布:keynote mac 编辑:程序博客网 时间:2024/06/16 17:30

1、其中while循环的控制很好,以所有的数组个数做为标志。

2、其中,数组下标的变量和控制循环的变量没有混淆在一起。

 while(count>0)         {             for(k=1;k<col;k++)             { count--; printf("%d\n",a[i][j]);j++;}  //输出一个环的上面那一条边                           for(k=1;k<row;k++)             { count--; printf("%d\n",a[i][j]);i++;}  //输出一个环的右侧那一条边                          for(k=1;k<col;k++)             { count--; printf("%d\n",a[i][j]);j--;}  //输出一个环的下面那一条边                          for(k=1;k<row;k++)             { count--; printf("%d\n",a[i][j]);i--;}  //输出一个环的左侧那一条边                          i++;             j++;             row-=2;             col-=2;             if(row==1)//只剩下一行             {                 for(k=1;k<=col;k++)                 { count--; printf("%d\n",a[i][j]);j++;}             }             else if(col==1)//只剩下一列             {                 for(k=1;k<=row;k++)                 { count--; printf("%d\n",a[i][j]);i++;}             }        }

0 0
原创粉丝点击