Tag: algorithm

VBA – 匹配2个sortingstring数组,其中一些元素没有匹配优化

我有2个数据集有很多string,我需要匹配。 第一个是1200行,第二个是大约800000.我通过Excelsorting,通过VBA调用这两个集合,所以他们在升序,因此我可以显着优化search速度,通过开始下一个迭代的第二个数据集比赛。 不幸的是,当没有find匹配的时候,即使对我search的字词检查string在字母表(>我的string)中,也不会遇到Exit For 。 我试图实现比较If vData1(arrayIndex1, 1) < vData2(arrayIndex2, 1) Then (也许与'国防部'检查之前,如果这样做在每个迭代将是缓慢的),但我遇到不正确的比较值,例如?"µm">"zzzzz"在string以“a”开始之前返回true,而在数据集中它是应该的。 有没有可靠的方法来解决这个问题? Dim optimizedCounter as long, arrayIndex1 as long, arrayIndex2 as long Dim vData1 as variant, vData2 as variant 'sort 2 data sets in Excel ascending 'assign data sets to arrays vData1 and vData2 optimizedCounter = LBound(vData2) For arrayIndex1 = LBound(vData1) To UBound(vData1) […]

在两个范围内检查algorithm

我有两个条件范围检查algorithm的问题…我想分配一个值后检查范围内的两个条件… 例: 我想分配一个值列D …我有编号的范围与ID(1,2,3 …)。 B列只在ID = 1附近有值,下一个ID为空,但范围内的所有行都有字符。 所以,我需要根据旁边的表格为D列赋值。 当B列为TRUE时,则D列中的值= NEGATIVE …结束,但当B列中的值= FALSE时检查组合的范围。 预期结果: 你有好主意吗? 感谢帮助!

Excel多项式曲线拟合algorithm

Excel用来计算二阶多项式回归(曲线拟合)的algorithm是什么? 是否有示例代码或伪代码可用?

Excel GoalSeekalgorithm

有没有人有这个algorithm的代码? 任何基于C的编程语言都可以,但是我更喜欢C#。 我可以尝试去实现它,但是我确定我不是第一个… 编辑:这不是作业,这是一个“给我一个codez”的问题:DI只是不想重新发明轮子

媒介尝试algorithm?

根据定义,algorithm与运行的介质无关。 例如,我使用Excel表格来播放数据结构,并在用编程语言实现algorithm之前做一些移动/改组/标记实验。 你用什么工具和技术来devise和模拟algorithm的function? 你如何使用绘图程序? 一种特殊的规范语言?

遗传algorithm的约束条件

我使用SolveXL作为excel的插件来进行多目标优化。 SolveXL通过应用非支配sorting遗传algorithmII(NSGA-II)来解决这个问题。 我的问题是约束,当我有约束不超过一个值(小于15),例如像这样 =IF(C5>15;C5-15;0) 该软件给我所有解决scheme,满足这一点。 但是,当我想要的解决scheme大于一个值(15) =IF(C5<15;15-C5;0) 我不能得到任何解决办法与不可行性零。 我确定我正在计算正确的,因为我用一个小例子试了一下。 难道不能工作,因为我的Excel计算的复杂性?

查找包含单元格的一组区域的algorithm

我正在处理一些电子表格数据,我有一组具有任意边界的单元格区域。 给定任何单元格,确定包含单元格的区域子集的最快方法是什么? 目前,我所能做的最好的是对主要sorting字段作为区域起始行索引,接着是结束行索引,起始列索引,然后结束列索引。 当我想要根据给定的单元格进行search时,我将对二进制search到的第一个区域的起始行索引位于单元格的行索引之后,然后检查所有区域之前是否包含该单元格,但这样太慢。

什么是确切的Excel Days360algorithm?

我将一些计算从Excel移植到使用Days360函数(默认/ US方法)的C#中。 使用维基百科页面作为指导,我想出了这个代码: public static int Days360(DateTime a, DateTime b) { var dayA = a.Day; var dayB = b.Day; if (IsLastDayOfFebruary(a) && IsLastDayOfFebruary(b)) dayB = 30; if (dayA == 31 || IsLastDayOfFebruary(a)) dayA = 30; if (dayA == 30 && dayB == 31) dayB = 30; return ((b.Year – a.Year) * 12 + b.Month – […]

使用Excel的VBA进行快速傅里叶变换

我试图在MS的Excel VBA中实现一个快速傅里叶变换(Radix-2)。 我正在使用的代码从工作表中的范围内拉取数据,进行计算,然后将结果转储到相邻的列中。 我遇到的麻烦是1)知道如何处理结果X [k]数组,2)将这些结果与Excel内置的FFT(它们当前不匹配)的结果进行匹配。 代码如下所示。 在此先感谢您的帮助。 Sub Enforce_DecimationInTime() On Error GoTo ERROR_HANDLING Dim SubName As String SubName = "Enforce_DecimationInTime()" Dim WS As Worksheet Dim n As Long, v As Long, LR As Long, x As Long Set WS = Worksheets("FFT") LR = WS.Range("A" & Rows.Count).End(xlUp).Row n = LR – 1 Do Until 2 ^ […]

在MS EXCEL中交替混合数据

我有一个包含10.000行的csv文件。 2.000行的值为“EXPL_1”。 3.000行的值为“EXPL_2”。 2.500行的值为“EXPL_3”。 1.500行的值为“EXPL_4”。 2.000行的值为“EXPL_5”。 我正在寻找一个function,将交替混合(重新sorting)的值,并将继续混合,直到完成。 所以最终的结果会是这样的: EXPL_1, EXPL_2, EXPL_3, EXPL_4, EXPL_5, EXPL_1, EXPL_2, EXPL_3, EXPL_4, EXPL_5, ………. (x times repeat) EXPL_1, EXPL_2, EXPL_3, EXPL_5, (*EXPL_4 values finished but continue to alternately mix the rest) *值是按名称sorting的(第一个是EXPL_1,第二个是EXPL_2等)*也许将来会出现更多的值。 *我知道列表中有多less个值。