手记

【学习打卡】第8天 数据结构之“集合”

课程名称:JavaScript版数据结构与算法
课程章节:第6章 数据结构之“集合”
主讲老师:lewis

课程内容:

今天学习的内容包括:
6-1 集合简介——集合是一种无序且唯一的数据结构。
6-2 LeetCode:349. 两个数组的交集——使用集合特性和筛选实现。
6-3 前端与集合:使用 ES6 中 Set——操作去重,是否存在,交集。
6-4 集合章节总结——集合使用场景挺多。
6-5 【勤于思考,夯实学习成果】阶段思考题——完成对应作业。

课程收获:

集合简介

1、集合是一种无序且唯一的数据结构。
2、ES6中有集合,名为Set。
3、集合的常用操作:去重(new Set())、判断某元素是否在集合中(has())、求交集(filter结合has)。

349. 两个数组的交集

/**
 * @param {number[]} nums1
 * @param {number[]} nums2
 * @return {number[]}
 */
var intersection = function(nums1, nums2) {
    return [...new Set(nums1)].filter(n => nums2.includes(n))
};

使用 ES6 中 Set

1、添加使用add
2、删除使用delete
3、判断是否存在使用has
4、获取长度使用size
5、转数组使用[…mySet] 或则 Array.from(myArr)
6、求合集new Set([…mySet].filter(x => mySet1.has(x)))
7、求差值new Set([…mySet].filter(x => !mySet1.has(x)))

在你的实际工作中使用集合完成一次去重操作

let zhangsanClass = ['语文', '数学', '英语', 'C++']
let lisiClass = ['语文', '数学', '英语', 'C++', 'Java', 'JavaScript']
let classList = new Set([...zhangsanClass, ...lisiClass])
console.log(classList)

通过对集合的学习,学习到了几个的常用操作,可以解决工作中的一些实际问题,让程序运行更快,希望自己快速将算法学习完,对自己说一句,加油😀~

坚持打卡,坚持学习!明天见💪~

0人推荐
随时随地看视频
慕课网APP