用Swift3实现n*n阶矩阵逆时针输出

用Swift3实现n*n阶矩阵逆时针输出,第1张

概述//: 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
//: 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阶矩阵逆时针输出所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1063634.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-26
下一篇 2022-05-26

发表评论

登录后才能评论

评论列表(0条)

保存