Java实现螺旋矩阵的示例
给定一个包含mxn个元素的矩阵(m行,n列),请按照顺时针螺旋顺序,返回矩阵中的所有元素。
示例1:
输入:
[
[1,2,3],
[4,5,6],
[7,8,9]
]
输出:[1,2,3,6,9,8,7,4,5]
示例2:
输入:
[
[1,2,3,4],
[5,6,7,8],
[9,10,11,12]
]
输出:[1,2,3,4,8,12,11,10,9,5,6,7]
classSolution{ publicListspiralOrder(int[][]matrix){ List result=newLinkedList<>(); if(matrix.length==0)returnresult; intupBound=0; intrightBound=matrix[0].length-1; intleftBound=0; intdownBound=matrix.length-1; while(true){ for(inti=leftBound;i<=rightBound;++i) result.add(matrix[upBound][i]); if(++upBound>downBound)break; for(inti=upBound;i<=downBound;++i) result.add(matrix[i][rightBound]); if(--rightBound =leftBound;--i) result.add(matrix[downBound][i]); if(--downBound =upBound;--i) result.add(matrix[i][leftBound]); if(++leftBound>rightBound)break; } returnresult; } }
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持毛票票。
声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:czq8825#qq.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。