javascript - JS - 将字符串列表映射到等长矩阵的有效方法

标签 javascript python dictionary matrix

我正在查看 problem solution on leetcode ,并且有一个聪明的解决方案,使用 Python 的 map 函数将字符串列表转置为相等大小的矩阵,如下所示:

t = map(None, *words)

说明:

map(None, ...) 转置“矩阵”,用 None 填充缺失的点。例如:

["abc",           [('a', 'd', 'f'),
 "de",     =>      ('b', 'e', None),
 "f"]              ('c', None, None)]

我想知道我是否可以通过 js 要点实现类似的目标

最佳答案

创建一个矩阵(长度相等):

solution=array.reduce((solution,el)=>(el.split("").forEach((letter,index)=>(solution[index]=solution[index]||[]).push(letter)),solution),[]);
//if you really need the *undefineds* :
maxlength=array.reduce((length,arr)=>Math.max(length,arr.length),0);
solution.forEach(el=>el.length=maxlength);

http://jsbin.com/nisoderini/edit?console 由于某种原因省略了解释...

检查数组中长度相等的数组:

length=array.reduce((length,arr,i)=>!i?arr.length:(length?(arr.length==length?length:false):false),0);

如果数组不是对称矩阵,则长度为 false...

检查方阵

square=array.every(arr=>arr.length==array.length);

关于javascript - JS - 将字符串列表映射到等长矩阵的有效方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43448185/

相关文章:

javascript - 强制加载 JS 中的音频库

javascript - extjs4 在按钮单击而不是鼠标悬停时显示工具提示

python - 解决折叠纸挑战

用于小数字的 Python numpy linspace

c++ - 关于Boost多索引容器的澄清

javascript - 如何在不执行的情况下使函数可链接?像 `obj.fn.fn` 而不是 `obj.fn().fn()`

javascript - 如何更改线条颜色和半点线

python - 通过模拟在单元测试上运行coverage.py

dictionary - 有没有汉英(反之亦然)词典API?

python - 计算词频并据此制作字典