scala
mike112223
深度学习,计算机视觉
展开
-
scala学习笔记(二)
if-else写一个函数使得所有的表达式都满足: and(x,y) == x && y or(x,y) == x || y 但是不能使用&&和||。def and(x:Boolean, y: => Boolean) = if (x) y else falsedef or(x:Boolean, y: => Boolea...原创 2017-06-19 18:26:39 · 215 阅读 · 0 评论 -
scala学习笔记(三)
迭代Euclid算法虽然是个到处都能看到的算法,但是还是想写下来,记录记录,太美 最大公约数def gcd(a: Int, b: Int): Int = if (b == 0) a else gcd(b, a % b)factorial算法def factorial(n: Int): Int = if (n == 0) 1 else n * f...原创 2017-06-20 09:11:06 · 283 阅读 · 0 评论 -
scala学习笔记(一)
CBN Versus CBV所有的笔记都来自于对于coursea上洛桑联邦理工学院的Scala 函数式程序设计原理课程的理解和摘录。scala中两种求值策略, call-by-value(CBV,应用序求值)和call-by-name(CBN,正则序求值)。 如果化简表达式由单纯的表达式构成,并且它们都会终止,不陷入循环,那么两种求值策略的结果是相同的,但是它们各有优势。 CBV优势在...原创 2017-06-19 15:22:35 · 342 阅读 · 0 评论 -
scala 第一周编程作业
RecursionExercise 1: Pascal’s Triangle给出行数和列数,运用递归,画出帕斯卡三角形 def pascal(c: Int, r: Int): Int = { if (c == 0 || r == c) 1 else pascal(c - 1, r - 1) + pascal(c, r - 1) }E...原创 2017-06-23 16:25:35 · 554 阅读 · 0 评论 -
scala学习笔记(四)
Higher-Order Functions以其他函数作为参数或者返回值的函数,被称为higher-order functions def sum(f: Int => Int, a: Int, b: Int): Int = if (a > b) 0 else f(a) + sum(f, a + 1, b) def sumInts(a: Int, b: Int) = sum(id,原创 2017-06-26 16:18:25 · 344 阅读 · 0 评论 -
scala学习笔记(五)
Finding Fixed Points满足f(x) = x的点就是所谓的Fixed Points,所以我们不断运用迭代使得误差小于阈值, x => f(x) => f(f(x)) => … val tolerance = 0.0001 def isCloseEnough(x: Double, y: Double) = abs((x - y) / x) / x < toleranc原创 2017-06-27 09:45:01 · 294 阅读 · 0 评论