当前位置 博文首页 > jcLee95的博客:[小笔记]TypeScript/JavaScript数组转置
CSDN:jcLee95
邮箱:291148484@163.com
在代数中,矩阵一个是一个方形数组,它由若干个长度相等的子数组构成。所谓转置指的是将一个矩阵中元素的行与列进行互换,就像将将一个矩形沿着对角线翻转一样,如:
[[1,2,3], [4,5,6], [7,8,9]]
翻转后:
[[1,4,7] [2,5,8] [3,6,9]]
TypeScript
// 转置一个矩阵型数组 export const T = (ary: any[])=>{ /* * 转置一个二维矩阵的本质就是改变其子数组的结构, * 即将原矩阵的行与列在结构上进行互换: * - 新子数组的个数为原任意一个子数组的长度; * - 新任意一个子数组的元素皆依次取自于原每一个子数组。 * 需要一个二层循环: * - 内层循环构造一个子数组,即从原子数组逐个取出同位序元素; * - 外层循环收集所有子数组。 */ let ar = [] // 转置后的数组 for(let i=0; i<ary[0].length; i++){ let cd = [] // 某个新子数组 for(let j=0;j<ary.length;j++){ cd.push(ary[j][i]) } ar.push(cd) } return ar }
JavaScript
// 转置一个矩阵型数组 var T = function (ary) { /* * 转置一个二维矩阵的本质就是改变其子数组的结构, * 即将原矩阵的行与列在结构上进行互换: * - 新子数组的个数为原任意一个子数组的长度; * - 新任意一个子数组的元素皆依次取自于原每一个子数组。 * 需要一个二层循环: * - 内层循环构造一个子数组,即从原子数组逐个取出同位序元素; * - 外层循环收集所有子数组。 */ var ar = []; // 转置后的数组 for (var i = 0; i < ary[0].length; i++) { var cd = []; // 某个新子数组 for (var j = 0; j < ary.length; j++) { cd.push(ary[j][i]); } ar.push(cd); } return ar; };
用例
console.log(T( [ [1,'2',3], [4,5,6], [7,['8'],9] ] ));
Out[]:
cs[ [ 1, 4, 7 ], [ '2', 5, [ '8' ] ], [ 3, 6, 9 ] ]
最新 更多<<
jcLee95的博客:[小笔记]TypeScript/JavaScript数组转置 jcLee95的博客:[小笔记]TypeScript/JavaScript模拟Python中的Ra jcLee95的博客:CSS盒子漂亮起来(1) flutter笔记_jcLee95的博客:flutter学习——使用webview jcLee95的博客:node + ts读取csv文件为二维数组 jcLee95的博客:Nodejs 文件 与 路径 相关用法实例解析 jcLee95的博客:MongoDB Shell工具:mongosh的使用 jcLee95的博客:MongoDB - 使用索引 jcLee95的博客:MongoDB - 数据模型 jcLee95的博客:MongoDB - 使用Python操作MongoDB 英雄哪里出来:??13万字《C语言动漫对话教程(入门篇)》??(建议收 xpj8888的博客:非常清晰地对python模块Numpy进行介绍:矩阵运算 xpj8888的博客:【人工智能行业大师访谈】1. 吴恩达采访 Yoshua xpj8888的博客:【人工智能行业大师访谈】2. 吴恩达采访 林元庆 xpj8888的博客:第一周 机器学习(ML)策略(1):1.1 为什么是 大番薯:编程术语英汉对照 HashFlag的博客:Python基础 风信子的猫Redamancy的快乐星球:PRML - Chapter 02 Probability g5703129的博客:java学习笔记总结,持续更新中 晴天的专栏:怎样规划你毕业以后的人生 Gaby的博客:SpringBoot基础入门学习 Gaby的博客:ORA-00904 “AGE “ invalid identifier Gaby的博客:idea上SVN点击show history出现问题 Gaby的博客:idea上操作git如何增加多个远程地址 Gaby的博客:MySQL中给查询记录设置列序号,排名 Gaby的博客:vscode保存Vue的代码片段 记在这里:EVE添加镜像 记在这里:EVE环境中VQFX重启问题记录 记在这里:EVPN 路由之Type1 per ESI 记在这里:EVPN Type1 per EVI