十四届蓝桥杯省赛Web大学组真题(2)

2024-02-27 1453阅读

温馨提示:这篇文章已超过448天没有更新,请注意相关的内容是否还可用!

3. 收集帛书碎片 (考点 ES6+新特性)

https://www.lanqiao.cn/problems/5135/learning/?subject_code=4&group_code=2&match_num=14&match_flow=1&origin=cup

十四届蓝桥杯省赛Web大学组真题(2)

实现目标:

请在 collect-puzzle.js 文件中补全函数 collectPuzzle 中的代码,返回包含不同帛书碎片的数组,最终拼出完整的战国帛书,需要注意:

  • 同一个人收集的帛书碎片可能是有重复的。
  • 同一组内不同的人收集的帛书碎片也可能是有重复的。
  • 工具函数需要统计所有人获取的不同帛书碎片,而不是帛书碎片数量。

    题目解读:

    如图所示,数据是给定的,我们需要做的是在collect-puzzle.js 文件中补全函数 collectPuzzle

    十四届蓝桥杯省赛Web大学组真题(2)

    来到题目,这里涉及知识点有ES6中...扩展运算符,Set数据结构

    前置知识:

    ...扩展运算符

    https://blog.csdn.net/xiaoxiaoluckylucky/article/details/88722561?ops_request_misc=&request_id=&biz_id=102&utm_term=ES%E4%B8%AD...%E8%A1%A8%E7%A4%BA%E4%BB%80%E4%B9%88&utm_medium=distribute.pc_search_result.none-task-blog-2~all~sobaiduweb~default-0-88722561.142^v96^pc_search_result_base2&spm=1018.2226.3001.4187

    可以参考这篇文章,大概内容说的是

    1.对象数组的浅拷贝

    // 对象
    let obj1 = {name:'hzj',age:18}
    let obj2 = {...obj1}
    console.log(obj2);
    //{name: 'hzj', age: 18}
    // 数组
    let arr1 =[1,2,3]
    let arr2 =[...arr1]
    console.log(arr2);
    //[1, 2, 3]
    

    2.对象数组的合并

    let obj3 = {name:'hzj',age:18}
    let obj4 = {sex:'男'}
    let obj5 = {...obj3,...obj4}
    console.log(obj5);
    //{name: 'hzj', age: 18, sex: '男'}
    let arr3 =[1,2,3]
    let arr4 =[4,5,6]
    let arr6 =[...arr3,...arr4]
    console.log(arr6);
    //[1, 2, 3, 4, 5, 6]

    Set

    https://blog.csdn.net/qq_37148353/article/details/119878954

    ES6提供了新的数据结构——Set。它类似于数组,但是成员的值都是唯一的,没有重复。Set本身是一个构造函数,用来生成Set数据结构。

    使用场景:用于数组去重、用于字符串去重、实现并集、交集、和差集

    let arr3 = [1,2,2,3,3,4]
    let list = new Set(arr3)
    console.log(list);
    //Set(4) {size: 4, 1, 2, 3, 4}

    有了这些前置知识,回到题目中,

    十四届蓝桥杯省赛Web大学组真题(2)

    打印一下...puzzles我们可以看到数据的结构[['四时运转', '灾变', '四时运转', '天象'],['四时运转', '月令禁忌', '天象'] , ['月令禁忌', '天象', '四时运转', '天象']]是这样的,那么我们是不是可以用for循环遍历他呢。

    let list = new Set([])
        for (var i = 0; i  
    

    代码解读:

    声明一个Set数据结构,向Set中循环遍历添加数据,达到去重效果,在返回浅拷贝set的数组。

VPS购买请点击我

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们,邮箱:ciyunidc@ciyunshuju.com。本站只作为美观性配图使用,无任何非法侵犯第三方意图,一切解释权归图片著作权方,本站不承担任何责任。如有恶意碰瓷者,必当奉陪到底严惩不贷!

目录[+]