省去烦人的前言吧,因为这期本来就不会长。
CS61A的作业2里出现了两个似乎很通用并且很有意思的高阶函数。
accumulate:把初始值,与某个自然数项数列以一种方式融合在一起。
其中,fuse是融合方式(函数)
start是初始值,n是数列最后一项(必须以1开始),term是通项公式(函数)
比如说,
也就是
这个函数与我写的代码如下。
第二个函数叫make_repeater,用来生成一个n层套娃版的函数,底层函数是f。
这是个高阶函数。说实话我觉得要习惯高阶函数这种思维似乎是需要锻炼的。
代码如下。
以上就是这一期。