算法笔记首页

Page

温昱宁 | 04 Mar 2021

Note: 红色的圈表示暂无页面,蓝色的圈表示有页面

Level 0

状态:刚接触编程,对编程十分陌生(比如说第一次成功print “Hello World”)

需要学习:编程语法,online judge的注册与运用,某些特殊模块

竞赛相关:无

练习相关:dmoj 3分题

笔记:

Level 1

状态:会使用至少一门编程语言的基本语法并解决简单问题

需要学习:抽象逻辑,简单算法(如:stack,queue,排序算法),时间复杂度

竞赛相关:USACO 铜组,ACSL,CCC的junior的前三题, Google Code Jam

练习相关:dmoj 5分题,CCC Junior 或 Senior Q1-2, Leetcode

笔记

Level 2

状态:能熟练的用编程解决涉及简单数据结构的问题

需要学习:高级算法,动态规划,图论算法

竞赛相关:USACO 银组甚至金组,CCC的junior甚至senior, Google Code Jam

练习相关:USACO 真题刷题,CCC Senior,Leetcode

笔记

Level 3

状态:能够快速将实际问题抽象为数学问题并使用熟练运用合适的算法解决问题,一定程度上对问题的数学结构进行同构变换来最大化算法效率

需要学习:金组及以上的高级算法,这些算法相对复杂一点并针对特定情境有较好的性能 & 数学

竞赛相关:USACO 金组,白金, Google Code Jam

练习相关:USACO真题,Leetcode Hard 题目

笔记

Level 4

状态:学完前面的东西

需要学习:找到一些感兴趣的相对 narrow down 一点的领域 - 例如 人工智能,数据科学,加密货币等学习 可以看看这里的其他笔记

竞赛相关:Kaggle,等的专业领域公开比赛,做科研活动,自己做一些小 Project

练习相关:自己找点好玩的东西做或者去这里看看学长学姐们自己做的东西玩owo

下面这些内容一般不能在竞赛中使用,但是在写自己的 Project 的时候会很有用。