如何在 Swift 3 中转置不等数组长度的矩阵 [英] How to transpose a matrix of unequal array length in Swift 3
本文介绍了如何在 Swift 3 中转置不等数组长度的矩阵的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我的数组是 [[Int]] 类型
My array is of type [[Int]]
array = [[1,2,3],
[4,5,6],
[7,8,9,10],
[11,12,13],
[14,15,16]]
我希望转置结果为:
array = [[1,4,7,11,14],
[2,5,8,12,15],
[3,6,9,13,16],
[0,0,10,0,0]]
如何将 0 填充到没有相等行或列映射的数组.
How to pad 0's to an array which does not have an equal row or column mapping.
我希望转置适用于具有不相等映射元素的行和列.请帮忙.
I want the transpose to work for both rows and columns with unequal mapping elements. Please help.
推荐答案
谢谢..!@Pragnesh Vitthani 我刚刚修改了你的答案.
Thanks..! @Pragnesh Vitthani I just modified your answer.
var array = [[1,2,3],
[4,5,6],
[7,8,9,10],
[11,12,13],
[14,15,16]]
var transposedArray = [[Int]]
for i in stride(from: 0, to: array.count, by: 1)
{
var subArray = [Int]()
for j in stride(from: 0, to: array.count, by: 1)
{
if array[j].count < array.count
{
array[j].append(0)
}
subArray.append(array[j][i])
}
transposedArray.append(subArray )
}
print(transposedArray)
这篇关于如何在 Swift 3 中转置不等数组长度的矩阵的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文