Day 1:Inverse Captcha
Contents
好久没做题了,这次是一次函数式编程语言的回归与练习
Part 1
第一部分大致讲解了就是一个旋转的情况, 我用手绘图描述一下,基本就懂了
具体实现:
|
|
Part 2
第二部分就是在第一部分上rotate的时候修改了窗口长度,改成了字符串的长度的一半,基本没啥区别.
Summary
第一天的题目就是考察数组处理,如何在iterator产生新的数组,Haskell的实现很巧妙,它用一个循环数组,根据窗口删除位置获取前n个元素上面那个图的链,再用拉链函数拼接原始数组,完美获取了这个旋转函数。
这里的函数式让我想起了SICP 中的eval and apply,借由下面这一张图来理解它吧
Reference
const是一个很有用的函数,用于忽略第二个参数 返回对一个参数
|
|