集合化简的流程示意图 | 学习笔记

简介: 快速学习集合化简的流程示意图

开发者学堂课程【Scala 核心编程 - 进阶集合化简的流程示意图学习笔记,与课程紧密连接,让用户快速学习知识。

课程地址https://developer.aliyun.com/learning/course/610/detail/9053


集合化简的流程示意图


内容介绍:

一.化简

二.说明

三.求和


一.化简

看一个需求:val list =list(1,20,30,4,5),求出 list 的和

化简:

将二元函数引用于集合中的函数,上面的问题当然可以使用便历 list 方法来解决,这里我们使用 scale 的化简方式来完成。


二.说明

说明

1)defreduceleft[B>:A](@deprecatedName('f) op:(B,A)=>B):B

2)reduceleft(f)接收的函数需要的形式为op:(B,A)=>B):B

3)reduceleft(f)的运行规则是从左边开始执行将得到的结果返回给第一个主数

4)然后继续和下一个元素运行,将得到的结果继续返回给第一个参数,继续

5)即://(((1+2)+3}+4)+5)15

如图

image.png


三.求和

刚才描述了求和的过程,前提是 reducelefft 不断求和化解,实际价值就比如将来有一个很多的集合,我要求其中最小的数,这里面有100个数,要求找出最小的数,如果有了这个 reducelefft 那个大,那个小就可以直接看出来,我们在接受一个高阶函数的时候,可以直接看到更多用法,可以不用写函数名,直接就是匿名函数,类似于学加法,函数是编程专门用的数,将来在接受一个函数时,可以直接传入匿名函数,一样可以使用,这是一种语法的规则,类似于一种加法,还有一个流程叫做 reduceright ,它是从右开始化解。

将来接收一个函数时,也可以直接传入一个匿名函数,这是语法的一种规则,从右化解这是 reduceright 唯一不同的地方。

相关文章
|
7月前
|
算法 Python
传统流程图和N-S(又称盒图或NS图)结构流程图
传统流程图和N-S(又称盒图或NS图)结构流程图
972 2
|
6月前
|
存储 算法
数据结构学习记录——图应用实例-六度空间(题目描述、算法思路、伪代码及解读、图解)
数据结构学习记录——图应用实例-六度空间(题目描述、算法思路、伪代码及解读、图解)
72 0
|
7月前
|
存储 搜索推荐 Java
图计算中的顶点和边是什么?请解释其概念和作用。
图计算中的顶点和边是什么?请解释其概念和作用。
210 0
|
7月前
|
算法 搜索推荐 Java
图计算中的图剪枝算法是什么?请解释其作用和常用方法。
图计算中的图剪枝算法是什么?请解释其作用和常用方法。
54 0
|
7月前
|
算法 Java 图计算
图计算中的最短路径算法是什么?请解释其作用和常用算法。
图计算中的最短路径算法是什么?请解释其作用和常用算法。
71 0
|
存储 数据可视化 数据挖掘
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
知识点丨重测序数据进行kinship亲缘关系分析、构建IBS矩阵的方法与介绍
|
Java
离散数学_十章-图 ( 3 ):由旧图构造新图
离散数学_十章-图 ( 3 ):由旧图构造新图
165 0
离散数学_第二章:基本结构:集合、函数、序列、求和和矩阵(1)
离散数学_第二章:基本结构:集合、函数、序列、求和和矩阵(1)
227 0
|
Scala 开发者
集合化简介绍和案例 | 学习笔记
快速学习集合化简介绍和案例
集合化简介绍和案例 | 学习笔记