zfu1316 / leetcode-maxed_out

本仓库记录本人在 leetcode 上所有算法题的提交答案,并随着每周的周赛等新增题目更新。编程语言以 C++ 为主,Python 为辅,少量 Java。

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

maxed out 这个词组的意思是刷爆,原意主要是指信用卡的刷爆。

本仓库用这个名称的含义就是说这是个刷爆 leetcode 算法题的仓库,并随着每周的周赛等新增题目进行日常更新。编程语言以 C++ 为主,Python 为辅,少量 Java。

本仓库的目录结构如下:

  • algorithm: leetcode 算法相关的题目的代码,随着每周的周赛进行更新。
    • cpp
    • java
    • python
  • interview: leetcode 收录的算法题书的题,目前已收录两本,代码覆盖所有题。
    • 剑指offer2
    • 程序员面试金典6
  • LCP: leetcode 举办的竞赛的题,有新的比赛时会更新。
  • multithread: leetcode 的多线程题目,正在更新中。
  • shell: leetcode 的 shell 题目,只有 4 道。
  • cluster: 细粒度标签题目列表的思维导图,包含问题场景、数据结构、算法三个维度。正在更新中。
  • recommend: 从面试官的角度推荐的适合面试的题,需要满足一些条件,持续更新中。

算法题刷刷


下面介绍以下比较关键的 algorithm,cluster,和 recommend 这三个目录。

(1) algorithm 中记录的是每道题的代码。

所有代码均为我在刷题时写的,并且每道题都有关于优化方法或者一题多解的代码记录。由于刷题过程很长,早期的代码显然不如中后期的代码好看,不过刷了 100 题左右基本就好了,贵在真实。

(2) cluster 中记录各个细粒度的算法标签以及其对应的题目编号,以思维导图的形式呈现。主要分为场景、数据结构、算法三个维度。

在场景这个维度中,我们将同一类问题组织到一起,解法可能设计很多算法。例如区间问题属于比较大的一类问题,下面的图将 leetcode 中所有与区间相关的问题按照解决方案聚合到一起了,方便大家集中刷题。

leetcode区间问题

在数据结构这个维度中,我们将数据机构层面相同的题组织到一起。例如 leetcode 上设计功能系统类型的题有很多,我们将所有题按主要的数据结构组织到一起,方便集中刷题。

leetcode设计功能系统

在算法这个维度中,我们将算法那层面相同的题组织到一起。例如常见的前缀和,虽然大量的题都属于前缀和的题,但是套路是很多的,我们将所有前缀和的题按照各个套路聚合到一起,方便大家集中刷题。

leetcode前缀和

(3) recommend: 我比较推荐的适合用来面试的题。


算法-数据结构

About

本仓库记录本人在 leetcode 上所有算法题的提交答案,并随着每周的周赛等新增题目更新。编程语言以 C++ 为主,Python 为辅,少量 Java。


Languages

Language:C++ 98.5%Language:Python 1.2%Language:Java 0.2%Language:Shell 0.1%Language:C 0.0%