leetcode: 48. Rotate Image
来源:互联网 发布:天猫淘宝优惠卷代理 编辑:程序博客网 时间:2024/06/18 13:27
Q
You are given an n x n 2D matrix representing an image.Rotate the image by 90 degrees (clockwise).
Note:
You have to rotate the image in-place, which means you have to modify the input 2D matrix directly. DO NOT allocate another 2D matrix and do the rotation.
Example 1:
Given input matrix = [ [1,2,3], [4,5,6], [7,8,9]],rotate the input matrix in-place such that it becomes:[ [7,4,1], [8,5,2], [9,6,3]]
Example 2:
Given input matrix =[ [ 5, 1, 9,11], [ 2, 4, 8,10], [13, 3, 6, 7], [15,14,12,16]], rotate the input matrix in-place such that it becomes:[ [15,13, 2, 5], [14, 3, 4, 1], [12, 6, 8, 9], [16, 7,10,11]]
AC
class Solution(object): """ :type matrix: List[List[int]] :rtype: void Do not return anything, modify matrix in-place instead. """ def rotate(self, matrix): matrix.reverse() for i in range(len(matrix)-1): for j in range(i+1, len(matrix)): a, b = matrix[j][i] , matrix[i][j] matrix[j][i] = b matrix[i][j] = a# Time: O(n^2)# Space: O(1)class Solution2(object): def rotate(self, matrix): n = len(matrix) for i in xrange(n): for j in xrange(n - i): matrix[i][j], matrix[n-1-j][n-1-i] = matrix[n-1-j][n-1-i], matrix[i][j] for i in xrange(n / 2): for j in xrange(n): matrix[i][j], matrix[n-1-i][j] = matrix[n-1-i][j], matrix[i][j] return matrix# Time: O(n^2)# Space: O(n^2)class Solution3(object): def rotate(self, matrix): return [list(reversed(x)) for x in zip(*matrix)]if __name__ == "__main__": matrix = [[1, 2, 3], [4, 5, 6], [7, 8, 9]] assert not Solution().rotate(matrix)
阅读全文
0 0
- [LeetCode]48.Rotate Image
- LeetCode 48. Rotate Image
- LeetCode 48.Rotate Image
- LeetCode --- 48. Rotate Image
- [Leetcode] 48. Rotate Image
- [leetcode] 48. Rotate Image
- Leetcode 48. Rotate Image
- 48. Rotate Image LeetCode
- [LeetCode]48. Rotate Image
- leetcode 48. Rotate Image
- Leetcode 48. Rotate Image
- LeetCode 48. Rotate Image
- LeetCode *** 48. Rotate Image
- [LeetCode]48. Rotate Image
- LeetCode 48. Rotate Image
- LeetCode-48.Rotate Image
- [LeetCode] 48. Rotate Image
- LeetCode 48. Rotate Image
- leetcode: 47. Permutations II
- python小问题整合
- clisp 记录:5. 数据和控制流(Data and Control Flow)
- 一文深度揭秘3GPP:2G/3G/4G/Pre-5G标准化制定流程是这样的
- 36-多线程(其他方法-join 1 2 37--- 37-多线程(面试题)
- leetcode: 48. Rotate Image
- python调用C语言步骤
- leetcode: 49. Group Anagrams
- Java8内存模型
- 西瓜书第四章决策树
- 11月16日笔记
- Hello World
- Shellcode和Payload入门102-代码中的加密-一如既往地源码和超详细注释
- leetcode: 50. Pow(x, n)