Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/performance/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Performance 基于蛮力的高效图搜索_Performance_Data Structures_Graph_Computer Science_Brute Force - Fatal编程技术网

Performance 基于蛮力的高效图搜索

Performance 基于蛮力的高效图搜索,performance,data-structures,graph,computer-science,brute-force,Performance,Data Structures,Graph,Computer Science,Brute Force,我想不出更好的标题了 我的问题是: 我有一个符号列表,每个符号都至少有一个分类(其中一些可能有更多) 假设我有4个符号:[[1,2],1,1,1,1,]->第一个可以被分类为1或2,其他3个总是被分类为1(而不是数字,你可以想到字符串,比如“人”、“动物”等等) 我有一些可以合并符号并生成新符号的“规则”。此过程将生成一个图形。在上面的示例中,我有两个初始状态: [1,1,1,1]和[2,1,1,1]如果我对它们应用一些规则,我会得到两个不同的图(例如,将1与1 if统一起来,或将2与1 if统

我想不出更好的标题了

我的问题是:

我有一个符号列表,每个符号都至少有一个分类(其中一些可能有更多)

假设我有4个符号:[[1,2],1,1,1,1,]->第一个可以被分类为1或2,其他3个总是被分类为1(而不是数字,你可以想到字符串,比如“人”、“动物”等等)

我有一些可以合并符号并生成新符号的“规则”。此过程将生成一个图形。在上面的示例中,我有两个初始状态: [1,1,1,1]和[2,1,1,1]如果我对它们应用一些规则,我会得到两个不同的图(例如,将1与1 if统一起来,或将2与1 if统一起来等等)

一种解决方案是将每个规则应用于每个初始状态并生成最终的图形,但我认为图形的某些部分可能是相同的,我最终会多次重新计算相同的内容

例如,如果我有[[1,2,3],1,…]长部分与前一部分不相交],那么这些图中的唯一区别可能只是左侧部分,但右侧部分总是相同的(使用蛮力方法,我总是会重新计算它)

你能想出一个聪明的方法不重新计算图形的同一部分吗?这个问题我记得你说过一些我能读到的东西吗?