给个list怎么倒序输出4 4矩阵?急。高分!那位高手解救一下,谢谢!!

来源:百度知道 编辑:UC知道 时间:2024/05/19 15:48:31
12, 2, 11, 8
1, 13, 3, 9
4, 10, 16, 7
5, 15, 14, 6
输出要求
1、程序读入input.txt中的数据,经过下列处理后,输出到当前目录下output.txt文件中
2、按从小到大逆时针方向依次写在4*4矩阵中。结果如下:
1, 12, 11, 10
2, 13, 16, 9
3, 14, 15, 8
4, 5, 6, 7

给你个思路吧
先把矩阵中所有数存放在数组中,然后对这个数组排序
新开一个存放标志位的二维数组并初始化为0
规定一个方向变量d,当d为0时往下存放,为1时往右存放,为2时往上存放,为3时往左存放.
新开一个放结果矩阵的二维数组
从那个排好序的数组的第一个元素开始依次往后取,然后放入上面二维数组的格子里,刚开始d为0,所以是从上往下放,每放一个格子就把flag数组中对应的那个格子置1,这样存放到横坐标或纵坐标大于4时或碰到标志位为1时就转向(转向时按上面的规则转,每转一次d就加1,当d等于3就不能加一了,而是又把d置为0),如此重复,直到把那个排好序的数组里的元素取完