Algorithm

Leetcode 002 - Add Two Numbers

本题考察了对链表的一些基本操作。思路很简单,就是按照小学学的加法原理,按位相加、满十进位即可。

def addTwoNumbers(self, l1, l2):
    p = ListNode(0)
    head = p
    carry = 0
    while l1 or l2:
        if l1:
            carry += l1.val
            l1 = l1.next
        if l2:
            carry += l2.val
            l2 = l2.next
        p.next = ListNode(carry % 10)
        carry = carry // 10
        p = p.next
    if carry==1:
        p.next = ListNode(1)
    return head.next

Review

Functional Programming in Javascript

一个交互式的 RxJS 教学网站,旨在帮助新手感受函数式编程。

私以为,函数式编程一个明显的特点就是使用『声明式』的语句。本文介绍了如何使用五个基础命令mapfilterconcatAllreduce(scan)zip(merge)来实现复杂的逻辑。

不过,本文只介绍了 RxJS 函数式编程的思想,对 Reactive 涉猎不多。RxJS 更大的魅力在于其将时间这一维度引入到程序设计中。

Tips

分享一个统计项目代码行数的小工具 cloc。使用 Perl 编写,支持多个平台。

做完项目之后,统计一下项目的代码行数,也是一件很有成就感的事情呐。

安装方法

npm install cloc -g

基本使用

cloc /path/to/dir

# 排除指定文件夹 --exclude-dir
# Example:
cloc /path/to/dir --exclude-dir node_modules

Share

最近在看的一本书《财富自由之路》。财富自由嘛,谁不想呢?

一本书读下来,给我印象最为深刻的有两点:第一,储蓄很重要,相信复利的力量;第二,对自己的财务状况要有清楚的认知,知道自己想要什么,别老想着犒劳自己,要『爱钱』。

关于储蓄,作者提出了一个比较可行的方法:『把每个月收入的 10% 存到某个特定账户内,并且这个账户只进不出』。存起来 10% 的收入并不会对生活质量造成太大的影响,但是日积月累却能够成为一笔不小的财富。

标签: none

添加新评论