//: Playground - noun: a place where people can play//import UIKit/* 逆时针打印N*N矩阵 */func anticlockwiseNN(n:Int){ var m=1; var a = [[Int]](); for _ in 0..<n { //初始化矩阵元素为0 var b = [Int]() for _ in 0..<n { b.append(0) } a.append(b) } for i in 0 ..< n/2 { //只旋转n/2次 for j in i ..< (n-i) { //向下 if(a[j][i] == 0){ a[j][i] = m ; m = m + 1 ; } } for j in (i + 1 ) ..< (n-i) { //向右 if a[n-i-1][j] == 0 { a[n-i-1][j] = m m = m + 1 } } for j in (i ..< (n-i-1)).reversed() { //向上 if a[j][n-i-1] == 0 { a[j][n-i-1] = m m = m + 1 } } for j in ((i + 1 ) ..< (n-i-1)).reversed(){ //向左 if a[i][j] == 0 { a[i][j] = m ; m = m + 1 } } } if(n%2==1){//注意!当n为奇数时,有个正中心点 a[n/2][n/2] = m; } for i in 0..<n { //初始化矩阵元素为0 var s = ""; for j in 0..<n { if a[i][j] < 10 { s = s + "0" } s = s + String(a[i][j]) + " " } print(s) }}anticlockwiseNN(n: 5)总结
以上是内存溢出为你收集整理的用Swift3实现n*n阶矩阵逆时针输出全部内容,希望文章能够帮你解决用Swift3实现n*n阶矩阵逆时针输出所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)