-
Notifications
You must be signed in to change notification settings - Fork 1.6k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
面试官:说说你对集合的理解?常见的操作有哪些? #263
Comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
一、是什么
集合(Set),指具有某种特定性质的事物的总体,里面的每一项内容称作元素
在数学中,我们经常会遇到集合的概念:
在计算机中集合道理也基本一致,具有三大特性:
二、操作
在
ES6
中,集合本身是一个构建函数Set
,用来生成Set
数据结构,如下:关于集合常见的方法有:
add()
添加某个值,返回
Set
结构本身当添加实例中已经存在的元素,
set
不会进行处理添加体现了集合的互异性特性
delete()
删除某个值,返回一个布尔值,表示删除是否成功
has()
返回一个布尔值,判断该值是否为
Set
的成员clear()
清除所有成员,没有返回值
关于多个集合常见的操作有:
并集
两个集合的共同元素,如下图所示:
代码实现方式如下:
交集
两个集合
A
和B
,即属于A
又属于B
的元素,如下图所示:用代码标识则如下:
差集
两个集合
A
和B
,属于A
的元素但不属于B
的元素称为A
相对于B
的差集,如下图所示:代码标识则如下:
三、应用场景
一般情况下,使用数组的概率会比集合概率高很多
使用
set
集合的场景一般是借助其确定性,其本身只包含不同的元素所以,可以利用
Set
的一些原生方法轻松的完成数组去重,查找数组公共元素及不同元素等操作参考文献
The text was updated successfully, but these errors were encountered: