【发布时间】:2018-05-22 15:36:30
【问题描述】:
我有一个数组,其中包含 n 数组,其中包含汽车信息(color、company),如下所示:el[0] -> 颜色值el[1] -> 公司值
我的目标是向多少家汽车公司展示可以找到一种颜色。
例如这个数组
var array = [
['red', 'Ford'],
['blue', 'Ford'],
['green', 'Ford'],
['red', 'Ford'],
['red', 'Renault'],
['blue', 'Renault'],
['green', 'Opel'],
['red', 'Opel']
];
应该改成如下:
result = [
['red', 'Ford', '3: Ford, Renault, Opel'],
['blue', 'Ford', '2: Ford, Renault'],
['green', 'Ford', '2: Ford, Open'],
['red', 'Renault', '3: Ford, Renault, Opel'],
['blue', 'Renault', '2: Ford, Renault'],
['green', 'Opel', '2: Ford, Opel'],
['red', 'Opel', '3: Ford, Renault, Opel']
];
说明:
有3 公司有red 颜色:Ford, Renault, Opel
有2 公司有blue 颜色:Ford, Renault
有2 公司有green 颜色:Ford, Opel
这是我认为可以解决的方法,但我不确定这是否是正确的方法:
1. 遍历每个数组,过滤颜色,得到所有适用的公司
2. 遍历过滤器响应并删除重复项
3. 再次循环主数组,并将步骤 2 的结果分配给具有过滤颜色的相应数组
【问题讨论】:
-
您是如何解决这个问题的?你有简单的英语算法吗?
-
@Learnonhardway 我更新了我的问题
标签: javascript arrays algorithm