Algorithm
这周仍然是 腾讯精选练习 50 题 列表中的一道简单题:爬楼梯,可以拆解出子问题,即爬到第 n 阶台阶有两种方式:从第 n - 1 阶爬 1 个台阶,或者从第 n - 2 阶爬 2 个台阶,所以:f(n) = f(n - 1) + f(n -2)。我的题解使用了一种带缓存的递归,时间复杂度是 O(n):
class Solution { |
Personal Notes
这周仍然是 腾讯精选练习 50 题 列表中的一道简单题:爬楼梯,可以拆解出子问题,即爬到第 n 阶台阶有两种方式:从第 n - 1 阶爬 1 个台阶,或者从第 n - 2 阶爬 2 个台阶,所以:f(n) = f(n - 1) + f(n -2)。我的题解使用了一种带缓存的递归,时间复杂度是 O(n):
class Solution { |
因为很久没做算法题了,刚开始选择了 腾讯精选练习 50 题 这个列表中较为简单的一题:反转链表,一个简单的解法是:在遍历的过程中记录当前节点的前后节点,然后进行指针(引用)的变更即可,我的题解代码如下:
/** |
Redis 服务器是典型的一对多服务器程序:一个服务器可以与多个客户端建立网络连接,每个客户端可以向服务器发送命令请求,而服务器则接收并处理客户端发送的请求,并想客户端返回命令回复。