Spiral Matrix II
来源:互联网 发布:mysql 存储过程语法 编辑:程序博客网 时间:2024/06/14 02:28
Given an integer n, generate a square matrix filled with elements from 1 ton2 in spiral order.
For example,
Given n = 3
,
[ [ 1, 2, 3 ], [ 8, 9, 4 ], [ 7, 6, 5 ]]
题目解析:
(1)一开始希望找到每个数字对应的公式,后来没找到
(2)所以只能是比较简单的对每一圈进行赋值。
#include <iostream>#include <vector>using namespace std;vector<vector<int> > generateMatrix(int n) {vector<int> temp(n,0);vector<vector<int>> result(n,temp);if(n<1)return result;int index = 1;int cycles = 0;while(n-2*cycles>1){int row = cycles;int col = cycles;for(int i=0;i<n-2*cycles;i++){result[row][col] = index;index++;col++;}col--;for(int i=0;i<n-2*cycles-1;i++){row++;result[row][col] = index;index++;}for(int i=0;i<n-2*cycles-1;i++){col--;result[row][col] = index;index++;}for(int i=0;i<n-2*cycles-2;i++){row--;result[row][col] = index;index++;}cycles++;}if(n-2*cycles == 1){result[cycles][cycles] = n*n;}return result;}void printArrayList(vector<vector<int> > &result){for(vector<vector<int>>::size_type i=0;i<result.size();i++){vector<int> temp = result[i];for(vector<int>::size_type j=0;j<temp.size();j++){cout << temp[j] << "";}cout << endl;}}int main(void){int n = 5;vector<vector<int> > result = generateMatrix(n);printArrayList(result);system("pause");return 0;}
0 0
- Spiral Matrix && Spiral Matrix II
- LeetCode: Spiral Matrix II
- LeetCode Spiral Matrix II
- [Leetcode] Spiral Matrix II
- LeetCode : Spiral Matrix II
- Spiral Matrix II
- [LeetCode] Spiral Matrix II
- Spiral Matrix II
- Spiral Matrix II
- [LeetCode]Spiral Matrix II
- Spiral Matrix II
- Spiral Matrix I(II)
- Spiral Matrix II
- [leetcode]Spiral Matrix II
- LeetCode-Spiral Matrix II
- [leetcode] Spiral Matrix II
- LeetCode - Spiral Matrix II
- Spiral Matrix II
- Oracle NLS_DATE_FORMAT
- 分布式搜索Elasticsearch——配置
- [C语言基础]linux实用代码
- StackTrace简述以及StackTraceElement使用实例
- 单元测试工具Numega(转)
- Spiral Matrix II
- Makefile(或者shell)的变量通过gcc的-D宏定义选项传递给C源文件
- [转]android – 多屏幕适配相关
- iOS时间那点事
- 拿来即用,一款Android超赞的图表开源库
- 安装NVIDIA Jetson TK1驱动的过程
- 3.3.1 递归计算
- Android dex分包方案
- Linux进程调度原理