Zejun Lin's Blog

异国漂泊,野蛮生长

0%

One of my wishes is that those dark trees,
So old and firm they scarcely show the breeze,
Were not, as ‘twere, the merest mask of gloom,
But stretched away onto the edge of doom.

Read more »

Overview

This summer I worked as a Research Intern at Baidu USA, responsible for the development and research of the Apollo autonomous driving platform.

The rest of this post is organized as follows.

  • I firstly introduce what Apollo and its architecture is in a general way.
  • Secondly, my duties and what I have done are described with details.
  • Finally, I end this post by discussing my internship experience, and how it relates to my program at Columbia University, my career goals and my aspirations.
Read more »

Leetcode每周碎碎念——参加了一个训练计划,每周输出一个Leetcode题目,除了有特别想总结的专题,通常会把内容都倒到这里。

Read more »

这篇文章简略说明了下单调栈和单调双端队列的感性认知和经典应用。

TODO:本来想画画图啥的,但最近有点忙,以后有空再补上和详细说明吧

Read more »

What it solves for

Parsing problems on leetcode are usually hard to write, hard to debug and variable for different situations, which makes it time-consuming. Sample problems might be the series of calculators. If you are trying to find a general, easy way (almost no annoying bugs after you finish it too!) to solve this kind of problems, then you should read this.

Basically this post introduce simple BNF and a easy-to-write Recursive Descent Parsing template to implement BNF.

Read more »

Introduction

There are many kinds of dynamic programming. DP over digit, just as its name shows, is doing dynamic programming over digits of a number. In this post, I will write a general template for this kind of problems.

Problem definition

First of all, we need to figure out what kind of problem it solves. The description of the problem is usually like:

Given a interval [lower, upper], find the number of all numbers $i$ that satisfy $f(i)$.

Here, the condition $f(i)$ is usually irrelated to the size of the number, but the composition of this number.

Read more »

Title

This year is incredible! I believe I should be more prepared for the autumn job searching since it may become very difficult. One thing I guess I should do is to get more coding training for the interview process.

I believe it will be a long journey since currrently I only solve 65 out of 1200 problems. This is also the purpose of this post — to encourage & motivate myself by recording my journey on Leetcode — solving problems, attending weekly contests~

Read more »

Regression_function_img
延续上一篇关于预测理论和ML的内容,本文旨在从数学角度理解和推导线性回归。

内容主要包括:

  1. 回归问题中的统计模型——从有输入到无输入模型
    1. 建模和评估风险(风险函数损失函数等)
    2. 作出最优预测
  2. 线性回归模型
    1. 线性回归是啥
    2. 数据拟合参数的方法
      1. 最大似然估计 MLE
      2. 经验风险最小化 ERM (Empirical Risk Minimization)
    3. ERM 怎么解
    4. ERM 表现评估(overfitting等内容)
Read more »

Binary search is such an easy to write algorithm but there are usually some hidden annoying bugs, such as condition of while statement (easy to get an endless loop). Besides, there are some variants like upper_bound and lower_bound searching, which makes this harder. However, if you can hold on to a same criteria of definition, things will become much easier.

In a nutshell, If you are struggling to write a CORRECT & BUG-FREE Binary Search, this might be what you need.

Read more »