【金秋打卡】第6天 JavaScript版数据结构与算法- 数据结构之“集合”

2022/10/31 3:25:02

本文主要是介绍【金秋打卡】第6天 JavaScript版数据结构与算法- 数据结构之“集合”,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

课程名称: JavaScript版数据结构与算法
课程章节:第5章 数据结构之“集合”
课程讲师: lewis
课程内容:前端JS的算法基础
课程介绍:
第6章 数据结构之“集合”
6-1 集合简介
6-2 LeetCode:349. 两个数组的交集
6-3 前端与集合:使用 ES6 中 Set
6-4 集合章节总结


一、什么是集合

集合(set)是一种包含不同元素的数据结构。集合中的元素称为成员。集合的两个最重要特性是:首先,集合中的成员是无序的;其次,集合中不允许相同成员存在。当你想要创建一个数据结构用来保存一些独一无二的元素时就可以用到集合。
图片描述


二、集合的结构

若_x_是集合_A_的元素,则记作_x_∈_A_。集合中的元素有三个特征:

1).确定性(集合中的元素必须是确定的)

2).互异性(集合中的元素互不相同。例如:集合A={1,a},则a不能等于1)

3).无序性(集合中的元素没有先后之分),如集合{3,4,5}和{3,5,4}算作同一个集合。

三、集合的常用方法

add():向集合中添加一个元素。

delete():从集合中删除一个元素。

has():查看集合中是否有该元素存在,如果存在返回true,否则返回false。

clear():删除集合中的所有元素。

size():返回集合中元素的数量。

values():返回一个包含集合中所有元素的数组。

has方法

首先来实现has方法,因为它会被add和delete方法调用


四、课程总结

Set对象的作用
数组去重:

var mySet = new Set([1, 2, 3, 4, 4]);
[...mySet]; // [1, 2, 3, 4]

并集:

var a = new Set([1, 2, 3]);
var b = new Set([4, 3, 2]);
var union = new Set([...a, ...b]); // {1, 2, 3, 4}

交集:

var a = new Set([1, 2, 3]);
var b = new Set([4, 3, 2]);
var intersect = new Set([...a].filter(x => b.has(x))); // {2, 3}

差集:

var a = new Set([1, 2, 3]);
var b = new Set([4, 3, 2]);
var difference = new Set([...a].filter(x => !b.has(x))); // {1}

————————————————
图片描述



这篇关于【金秋打卡】第6天 JavaScript版数据结构与算法- 数据结构之“集合”的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程