统计匹配检索规则的物品数量
题目
给你一个数组 items ,其中 items[i] = [typei, colori, namei] ,描述第 i 件物品的类型、颜色以及名称。
另给你一条由两个字符串 ruleKey 和 ruleValue 表示的检索规则。
如果第 i 件物品能满足下述条件之一,则认为该物品与给定的检索规则 匹配 :
ruleKey == "type" 且 ruleValue == typei 。ruleKey == "color" 且 ruleValue == colori 。ruleKey == "name" 且 ruleValue == namei 。统计并返回 匹配检索规则的物品数量 。
复制代码
题解
定义一个 map,用于定位 ruleKey 所在的索引;循环二维数组,查找二维数组的每个元素(一位数组)[ruleKey 所在的索引] 是否等于 ruleValue;
复制代码
或者:
根据题意 item 是由 [type, color, name]组成的二维数组, 通过 map 定义三个属性的下标{type: 0,color: 1,name: 2 }并根据 ruleKey 动态取出来,剩下的一个 filter 就搞定了
复制代码
版权声明: 本文为 InfoQ 作者【掘金安东尼】的原创文章。
原文链接:【http://xie.infoq.cn/article/d92c737b337f05d1e225f4dda】。文章转载请联系作者。
评论