您的位置:首页 > 编程语言 > Go语言

LeetCode "498. Diagonal Traverse"

2017-02-10 05:07 465 查看
Medium? Seriously?

Well again, always smart solutions out there: https://discuss.leetcode.com/topic/77889/3-line-python-solution
class Solution(object):
def findDiagonalOrder(self, matrix):
r = []
n = len(matrix)
if n == 0: return r
m = len(matrix[0])

ni = n + m - 1
for i in range(ni):
rr = []
x = min(n - 1, i)
y = max(i - n + 1, 0)
while x >= 0 and y < m:
rr += [matrix[x][y]]
x = x - 1
y = y + 1
if i % 2 == 1:
rr.reverse()
r = r + rr

return r
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: