博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Inventory Update(FCC高级算法)
阅读量:6671 次
发布时间:2019-06-25

本文共 927 字,大约阅读时间需要 3 分钟。

依照一个存着新进货物的二维数组,更新存着现有库存(在 arr1 中)的二维数组. 如果货物已存在则更新数量 . 如果没有对应货物则把其加入到数组中,更新最新的数量. 返回当前的库存数组,且按货物名称的字母顺序排列.

 

代码如下:

function updateInventory(arr1, arr2) {    // 请保证你的代码考虑到所有情况    // 将相等的数量相加   并删除新库中老库已有的值    arr1 = arr1.map(function(item , index , array){        for (var i = 0; i < arr2.length; i++) {            if(arr2[i][1] == item[1]){                item[0] += arr2[i][0];                arr2.splice(i,1);            }        }        return item;    });    //   新库中留下的就是老库中没有的值      合并至新库中    arr1 = arr1.concat(arr2);             //   取所有名字的第一个字母转换成数字    for (var i = 0; i < arr1.length; i++) {        arr1[i][2] = arr1[i][1].charCodeAt(0);    }    //  用数字升序排序    arr1 = arr1.sort(function(a,b){        return a[2]-b[2];    });    //删除掉多余的存第一个字母的数组    for (var i = 0; i < arr1.length; i++) {       arr1[i].splice(2, 1);    }    return arr1;}

 

转载于:https://www.cnblogs.com/Leon-Huang-everyone/p/InventoryUpdate-FCC-hht.html

你可能感兴趣的文章
解决Unable to resolve target 'android-7'报错
查看>>
Connections could not be acquired from the unde...
查看>>
UIAlertView 总结
查看>>
邮件服务器:SMTP协议原始命令码和工作原理
查看>>
在Sublime Text中配置 JavaScript 控制台(JavaScript Console in Sublime Text)
查看>>
python使用os模块获取当前目录
查看>>
DNS服务(一)——DNS原理及其解析过程详解
查看>>
卸载linux软件总结
查看>>
redhat 6.5 安装和配置zabbix客户端
查看>>
硬链接和软链接(2)
查看>>
几种REST服务JAVA客户端类库
查看>>
什么是Hijax?Hijax的原理及优缺点介绍
查看>>
【2016-03-17】移动互联网时代,看好你的隐私
查看>>
linux命令:编译安装postfix邮件服务
查看>>
vi命令集
查看>>
oracle数据库克隆
查看>>
输出 pdf
查看>>
PHPCMS一个BUG
查看>>
APP云测试
查看>>
3-unit3 高速缓存DNS
查看>>