【算法设计作业】week16
来源:互联网 发布:mongodb大数据书籍 编辑:程序博客网 时间:2024/06/05 16:58
week16
48. Rotate Image
来源:https://leetcode.com/problems/rotate-image/description/
题意
给定一个矩阵,输出顺时针旋转之后的矩阵
思路
最简单的思路是,建立每一个点与新店的数学关系,然后映射过去。
但是在discussion有人给出了顺时针旋转和逆时针旋转的算法,相当简洁。
参考代码
/* * clockwise rotate * first reverse up to down, then swap the symmetry * 1 2 3 7 8 9 7 4 1 * 4 5 6 => 4 5 6 => 8 5 2 * 7 8 9 1 2 3 9 6 3*/void rotate(vector<vector<int> > &matrix) { reverse(matrix.begin(), matrix.end()); for (int i = 0; i < matrix.size(); ++i) { for (int j = i + 1; j < matrix[i].size(); ++j) swap(matrix[i][j], matrix[j][i]); }}/* * anticlockwise rotate * first reverse left to right, then swap the symmetry * 1 2 3 3 2 1 3 6 9 * 4 5 6 => 6 5 4 => 2 5 8 * 7 8 9 9 8 7 1 4 7*/void anti_rotate(vector<vector<int> > &matrix) { for (auto vi : matrix) reverse(vi.begin(), vi.end()); for (int i = 0; i < matrix.size(); ++i) { for (int j = i + 1; j < matrix[i].size(); ++j) swap(matrix[i][j], matrix[j][i]); }}
阅读全文
0 0
- 【算法设计作业】week16
- 算法设计Week16 LeetCode Algorithms Problem #322 Coin Change
- week16
- (算法分析Week16)Accounts Merge[Medium]
- (算法分析Week16)132 Pattern[Medium]
- 算法设计作业;贪心;
- 算法设计作业1
- 算法设计作业2
- 算法设计作业3
- 算法设计作业4
- 算法设计作业5
- 算法设计作业6
- 算法设计作业7
- 算法设计作业8
- 算法设计作业9
- 算法设计作业10
- 算法设计作业11
- 算法设计作业12
- 向表里新增/删除一条字段
- Vuejs全家桶系列(六)---自定义指令
- 关于版本管理工具 git 的具体使用
- 冒泡排序
- mysql5.6多实例
- 【算法设计作业】week16
- 使用QT+MinGW编写动态库dll供VC或VB调用
- YOLO——保存处理后的视频到本地
- 一文快速掌握 Git 用法
- [mongoDB]CentOS系统yum安装与配置mongoDB3.4
- 跳转UIImagePickerController崩溃原因
- iSO获取两个日期之间的所有日期数组,精确到天
- lintcode5-5. 第k大元素
- SwipeRefreshLayout详解和自定义上拉加载更多