社区
数据结构与算法
帖子详情
请问有没有关于将一个2维数组旋转90度的算法?
Brunhild
2003-12-12 10:23:35
例如一个2维数组:
1,2,3
4,5,6
顺时针旋转90度后成为:
4,1
5,2
6,3
逆时针旋转后变成:
3,6
2,5
1,4
...全文
174
5
打赏
收藏
请问有没有关于将一个2维数组旋转90度的算法?
例如一个2维数组: 1,2,3 4,5,6 顺时针旋转90度后成为: 4,1 5,2 6,3 逆时针旋转后变成: 3,6 2,5 1,4
复制链接
扫一扫
分享
转发到动态
举报
AI
作业
写回复
配置赞助广告
用AI写文章
5 条
回复
切换为时间正序
请发表友善的回复…
发表回复
打赏红包
dengsf
2003-12-14
打赏
举报
回复
写错一些。
a[i][m-1-j] 改为 a[m-1-j][i].
虽然已经结帖,但还是希望楼主能看到。
Brunhild
2003-12-12
打赏
举报
回复
矩阵的东西早就忘清光了,能不能给段代码或提示啊
lygfqy
2003-12-12
打赏
举报
回复
用线性代数中的矩阵转换即可
dengsf
2003-12-12
打赏
举报
回复
按错了,继续。下面是C伪码而已,编译肯定不过,只是说明问题而已。
//a 是原数组, m 是行数, n 是列数。
//顺时针转换 a[][],返回 b[][].
int[][] clockwise( int[][] a ,int m, int n )
{
int[][] b = new int(m*n);
for(int i=0; i<n; i++)
{
for(int j=0; j<m; j++)
{
b[i][j] = a[i][m-1-j];
}
}
return b;
}
dengsf
2003-12-12
打赏
举报
回复
比较简单吧,应该不必用到矩阵,稍微观察一下就可以编码了。
设原矩阵为 A[M,N],则生成结果为 B[M,N],
我写写我时针的思路,逆时针类似。
二
维
数组
旋转
.zip
本话题聚焦于如何使用C++语言实现
一个
二
维
数组
的
90
度
旋转
操作,这是
一个
经典的
算法
问题,常见于面试中,以考察候选人的逻辑思
维
和编程能力。 二
维
数组
在C++中的表示通常为`int arr[行数][列数]`,其中行数和列数...
python 二
维
数组
90
度
旋转
的方法
在Python编程中,二
维
数组
(也称为矩阵)的
90
度
旋转
是
一个
常见的操作,尤其在图像处理、数据变换和
算法
实现中。本篇文章将详细解释如何实现Python二
维
数组
的
90
度
顺时针
旋转
。 首先,我们要理解二
维
数组
在Python中的...
分治法
旋转
数组
在这个特定的问题中,我们将通过分治法来构建
一个
特殊的
旋转
数组
——
一个
二
维
数组
,其中的元素按照特定的顺序排列。 #### 三、分治法解决
旋转
数组
问题的实现思路 根据题目描述,我们需要构建
一个
正方形的二
维
数组
...
vb二
维
数组
实现俄罗斯方块
例如,
一个
方块在
旋转
90
度
时,原
数组
的(i, j)位置的元素会变为新
数组
的(j, -i)位置(对于左上角为原点的坐标系)。这避免了针对每种方块类型和
旋转
方向的单独处理。 4. **碰撞检测**:二
维
数组
可以方便地进行边界...
数组
循环左移
对于
一个
长
度
为n的一
维
数组
,如果要向左
旋转
i个位置,直观的方法是创建
一个
新的临时
数组
,将原
数组
后n-i个元素复制到新
数组
,然后将原
数组
前i个元素复制到新
数组
的剩余位置,最后将新
数组
的内容复制回原
数组
。...
数据结构与算法
33,027
社区成员
35,336
社区内容
发帖
与我相关
我的任务
数据结构与算法
数据结构与算法相关内容讨论专区
复制链接
扫一扫
分享
社区描述
数据结构与算法相关内容讨论专区
社区管理员
加入社区
获取链接或二维码
近7日
近30日
至今
加载中
查看更多榜单
社区公告
暂无公告
试试用AI创作助手写篇文章吧
+ 用AI写文章