草庐IT

组合数学

全部标签

ruby - 如何在 ruby​​ 中将一个散列与另一个散列组合

我有两个哈希...a={:a=>5}b={:b=>10}我要...c={:a=>5,:b=>10}如何创建哈希c? 最佳答案 如果你只是交错,这是一个非常直接的操作:c=a.merge(b)如果你真的想把这些值加在一起,这会有点棘手,但并非不可能:c=a.dupb.eachdo|k,v|c[k]||=0c[k]+=venda.dup的原因是为了避免破坏a散列中的值,但如果您不在乎,可以跳过该部分。||=用于确保它以默认值0开头,因为nil+1无效。 关于ruby-如何在ruby​​中将一

ruby - Ruby 中两个数组的组合

Ruby实现following的方法是什么?a=[1,2]b=[3,4]我想要一个数组:=>[f(1,3),f(1,4),f(2,3),f(2,4)] 最佳答案 您可以使用product先获取数组的笛卡尔积,然后收集函数结果。a.product(b)=>[[1,3],[1,4],[2,3],[2,4]]因此您可以使用map或collect来获取结果。它们是同一方法的不同名称。a.product(b).collect{|x,y|f(x,y)} 关于ruby-Ruby中两个数组的组合,我们在

ruby - 在 Ruby 中,是否有组合 'select' 和 'map' 的数组方法?

我有一个包含一些字符串值的Ruby数组。我需要:找到所有匹配某个谓词的元素通过转换运行匹配元素以数组形式返回结果现在我的解决方案是这样的:defexamplematchingLines=@lines.select{|line|...}results=matchingLines.map{|line|...}returnresults.uniq.sortend是否有Array或Enumerable方法将select和map组合成一个逻辑语句? 最佳答案 我通常将map和compact连同我的选择标准一起用作后缀if。compact摆脱了

javascript - 组合无重复javascript

这个问题在这里已经有了答案:JavaScript-Generatingcombinationsfromnarrayswithmelements[duplicate](10个答案)关闭4年前。给定[["blue","red"],[1,2],[true,false],]如何在javascript中获取可能的组合?:blue,1,trueblue,1,falseblue,2,trueblue,2,falsered,1,truered,1,falsered,2,truered,2,false顺序无关紧要。

javascript - 在组合选择上具有动态显示/隐藏字段的 Extjs 表单

使用Ext4.1我想创建一个带有选择组合的表单,并且根据当前选择的选项不同的子字段将被显示/隐藏。下面的例子:现在我有一个组合和一组在渲染中隐藏的两个日期字段。当组合值更改时,我有一个事件监听器将显示这些字段。但我不确定这是否是解决此问题的最佳方法。在这种情况下,字段集会更好吗?Ext.define('TooltipForm',{extend:'Ext.form.Panel',layout:{type:'vbox',align:'stretch'},border:false,bodyPadding:10,initComponent:function(){this.on('afterre

javascript - lodash:组合对象数组

在lodash中,我想将对象数组转换为包含每个属性数组的单个对象。我有一个对象数组:varstudents=[{name:'A',idNo:1,marks:{math:98,sci:97,eng:89}},{name:'B',idNo:2,marks:{math:88,sci:87,eng:79}},{name:'C',idNo:3,marks:{math:87,sci:98,eng:91}}]我想像这样组合/reshape它们:{name:[A,B,C],idNo:[1,2,3],marks:[{math:98,sci:97,eng:89},{math:88,sci:87,eng:7

javascript - javascript数组中条目的成对组合

我在javascript中得到了一组条目,例如:varentries=["cat","dog","chicken","pig"];我现在想遍历它们的所有唯一成对组合。在此示例中,我希望看到:("cat","dog"),("cat","chicken"),...在其他语言中,比如scala,这非常容易。你只要做entries.combinations(2)JavaScript库中是否有类似的方法或函数?还是我只需要自己用嵌套循环的丑陋方式编写它? 最佳答案 vararr=["cat","dog","chicken","pig"].ma

Javascript 正则表达式 + Unicode 变音符号组合字符`

我想匹配非洲约鲁巴语“ẹ́”中的这个字符。通常这是通过在点变音符号下组合'é'和'\u0323'来实现的。我发现:'é\u0323'.match(/[é]\u0323/)worksbut'ẹ́'.match(/[é]\u0323/)doesnotwork.我不只是想匹配e。我想匹配所有组合。现在,我的解决方案涉及枚举所有组合。像这样:/[ÁÀĀÉÈĒẸE̩Ẹ́É̩Ẹ̀È̩Ẹ̄Ē̩ÍÌĪÓÒŌỌO̩Ọ́Ó̩Ọ̀Ò̩Ọ̄Ō̩ÚÙŪṢS̩áàāéèēẹe̩ẹ́é̩ẹ̀è̩ẹ̄ē̩íìīóòōọo̩ọ́ó̩ọ̀ò̩ọ̄ō̩úùūṣs̩]/难道没有更短更好的方法来做到这一点,或者在unicode

javascript - 变换矩阵线性组合的旋转动画导致放大缩小

我有一个3x3矩阵(startMatrix),它表示图像的实际View(平移、旋转和缩放)。现在我创建一个新矩阵(endMatrix),它有一个恒等矩阵、新的x和y坐标、新的Angular和新的比例,例如:endMatrix=translate(identityMatrix,-x,-y);endMatrix=rotate(endMatrix,angle);endMatrix=scale(endMatrix,scale);endMatrix=translate(endMatrix,(screen.width/2)/scale,screen.height/2)/scale);和功能(标准的

javascript - 为什么函数组合在 Javascript 中是从右到左组合的?

函数组合从右到左组合:constcomp=f=>g=>x=>f(g(x));constinc=x=>x+1;constdec=x=>x-1;constsqr=x=>x*x;letseq=comp(dec)(comp(sqr)(inc));seq(2);//8seq(2)转化为dec(sqr(inc(2)))应用顺序为inc(2)...sqr...十二月。因此,函数的调用顺序与传递给comp的顺序相反。这对于Javascript程序员来说并不直观,因为他们习惯于从左到右的方法链接:o={x:2,inc(){returnthis.x+1,this},dec(){returnthis.x-1