问题标签 [nested-loops]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
bash - Bash 嵌套循环,日期和数字的混合
我正在尝试输出一系列具有不同日期和相关数字的命令。每小时例如。
我试图在循环中做的输出是:
所以基本上上面的内容会为每个特定的日子生成一个输出完成 24 次,并具有唯一的 4 位 id。
我正在考虑有一个嵌套循环,因为批号需要是唯一的。
谁能帮忙?
unix - Unix - 嵌套循环。一个循环解压缩,然后另一个循环检查目录中的每个文件
我正在尝试循环加载大量 tar 文件,然后将提取的文件移动到一个新文件夹中,检查它们并删除它们,然后再移动到下一个 tar。
代码如下:
当它进入嵌套循环时,它会询问我是否要显示所有 x 可能性。很明显,出了点问题。有任何想法吗?
loops - 嵌套while循环的golfscript
嵌套的while循环是否在golfscript中被破坏或者我不知道如何使用它们?
我想将 Q 从 5 迭代到 0,并且对于每次迭代,将 Z 从 10 迭代到 0。单个循环单独运行良好,并且它们似乎是自包含的(不依赖于操作之间的堆栈):
输出:
但是如果我把 Z 循环放在 Q 循环中,我会得到奇怪的结果:
输出:
基于 Z 打印两次,似乎只有一个当前条件块,并且“while”的任何执行都会覆盖它。
无论如何,我将如何在 Golfscript 中完成这一壮举?
algorithm - 找出一组数字中的哪些组合加起来等于给定的总数
我的任务是帮助一些会计师解决他们遇到的一个常见问题——给定交易清单和总存款,哪些交易是存款的一部分?例如,假设我有这个数字列表:
而且我知道我的总存款是10.50
,我可以很容易地看到它是由8.00
和2.50
交易组成的。但是,考虑到一百笔交易和数百万笔存款,它很快就会变得更加困难。
在测试蛮力解决方案(这需要太长时间而不实用)时,我有两个问题:
对于大约 60 个数字的列表,似乎可以找到十几个或更多组合来构成任何合理的总数。我期待一个组合来满足我的总数,或者可能是几个可能性,但似乎总是有很多组合。有没有描述为什么会这样的数学原理?似乎给定一个中等大小的随机数集合,你可以找到一个多重组合,加起来几乎是你想要的任何总数。
我为这个问题建立了一个蛮力解决方案,但它显然是 O(n!),并且很快就失去了控制。除了明显的捷径(不包括大于总数本身的数字),有没有办法缩短计算时间?
我当前(超慢)解决方案的详细信息:
明细金额列表从大到小排序,然后递归运行以下流程:
- 取出列表中的下一项,看看将其添加到您的运行总数中是否会使您的总数与目标相匹配。如果是这样,请将当前链放在一边作为匹配项。如果它没有达到您的目标,请将其添加到您的运行总计中,将其从详细金额列表中删除,然后再次调用此过程
通过这种方式,它可以快速排除较大的数字,将列表缩减为只需要考虑的数字。但是,它仍然是n!和更大的列表似乎永远不会完成,所以我对我可以用来加快速度的任何捷径感兴趣 - 我怀疑即使从列表中删除 1 个数字也会将计算时间缩短一半。
谢谢你的帮助!
php - PHP循环遍历带有字符串的数组和里面的数组
这是一个基本的循环问题,但有一个转折,所以我很可能错过了一些简单的东西 - 提前道歉......
我正在尝试从数组 $testoutput 中提取结果 - 该数组填充了 3 个数组:
运行以下代码:
回报:
使用以下代码添加第二个嵌套循环:
结果是:
我可以重新调整上述所有字符串,但是,我不知道如何从嵌套数组的第 3 级返回值。
是否有捷径可寻?
提前谢谢了。
c++ - C ++模板制作具有不同常量的多个版本的函数
我可以使用模板来创建一些函数的多个实例化,仅在一些常量参数上有所不同吗?此参数的备选数量是固定的。例如
我不想重写(上面是 1..32 的 2 次方)
成一组
但进入模板化
进而
C ++模板可以做到这一点吗?
== 开启详细模式 ==
我有很多带有类似代码的 C++ 文件
这只是一个例子,但是:
- 我不能互换循环;
- 2个外部循环, i & j 有很多迭代
- 2 个内部(嵌套),k& l 有一些迭代,其中的数量被传递到
function_typical
并且它们的集合是固定的,例如 const_1 和 const_2 是对之一:(2,3),(4,5) , (3,5)。允许的对总数小于 10。
这段代码的问题是它的速度非常低。如果我将此代码中的 const_1 和 const_2 修复为数字常量,编译器将在优化方面做得很好(例如展开所有 k 和所有 l 迭代,做一些聪明的工作)。
但我实际上无法更改每组 (const_1 和 const_2) 对的每个典型函数。此外,编译器的常量传播器无法传播函数集信息的常量(这是一个网络服务器,客户端选择一些 const_1 和 const_2 对形式的固定集)。
所以我在编译时知道对的所有替代方案。但是我没有机会手动重写每个函数。
==详细模式关闭==
提前致谢
c - 帕斯卡三角形的帮助
下面的代码片段打印了帕斯卡三角形,我从互联网上得到了这个片段,但我无法获得 bin 的公式。如果有人能帮我解决这个问题,我将不胜感激\
bash - 外壳:嵌套for循环
不知何故,在下面的脚本中,$i
第 3 行的值没有扩展。知道为什么吗?
optimization - 使用 SSE 优化有限差分
我想知道是否可以使用 SSE (1,2,3,4,...) 来优化以下循环:
该[j*size + k]
成语用于将内存块视为多维数组。
遗憾的是-ftree-vectorize
,GCC (4.5) 的标志不相信循环适合 SIMD 类型的优化。-ftree-vectorize
(尽管我说除了最琐碎的循环之外,我从未见过优化任何东西。)
虽然我知道还有许多其他方法可以提高循环的性能(OpenMP、展开、就地算法等),但我特别想知道是否可以使用 SIMD。我可能更感兴趣的是如何(如果有的话)这样的循环可以被转换的总体轮廓,而不是具体的实现。