【转】学习路线2
来源:互联网 发布:oracle 执行sql脚本 编辑:程序博客网 时间:2024/06/05 16:36
原文链接
1. 掌握C++部分语法,如引用类型,函数重载等,基本明白什么是类。
2. 学会BFS与DFS
a) 迷宫求解(最少步数)
b) 水池数目(NYOJ27)
c) 图像有用区域(NYOJ92)
d) 树的前序中序后序遍历
3. 动态规划(15题以上),要学会使用循环的方法写动态规划,同时也要学会使用记忆化搜索的方法。
a) 最大子串和
b) 最长公共子序列
c) 最长单调递增子序列(O(n)与O(n log n)算法都需要掌握)
d) 01背包
e) RMQ算法
4. 学会分析与计算复杂程序的时间复杂度
5. 学会使用栈与队列等线性存储结构
6. 学会分治策略
7. 排序算法
a) 归并排序
b) 快速排序
c) 计数排序
8. 数论
a) 扩展欧几里德算法
b) 求逆元
c) 同余方程
d) 中国剩余定理
9. 博弈论
a) 博弈问题与SG函数的定义
b) 多个博弈问题SG值的合并
10. 图论:
a) 图的邻接矩阵与邻接表两种常见存储方式
b) 欧拉路的判定
c) 单最短路bellman-ford算法dijkstra算法。
d) 最小生成树的kruskal算法与prim算法。
11. 学会使用C语言进行网络编程与多线程编程
12. 高等数学
13. 线性代数
a) 明确线性代数的重要性,首先是课本必须学好
b) 编写一个Matrix类,进行矩阵的各种操作,并求编写程序解线性方程组。
c) 推荐做一两道“矩阵运算”分类下的题目。
14. (较重要)使用C语言或C++编写简单程序来调用一些简单的windows API,或者在linux下进行linux系统调用,其目的是明白什么是API(应用程序接口)。
15. 网页设计
a) 学习静态网页技术(html+css+javascript)
b) 较具有艺术细胞的可以试试Photoshop
c) php或其它动态网页技术
16. 学习matlab,如果想参加数学建模大赛的话,需要学这个软件。
- 【转】学习路线2
- 转)Linux学习路线
- Android学习路线(转)
- (转)Linux学习路线
- 转hadoop 学习路线
- 转)Linux学习路线
- javaweb学习路线【转】
- [转]Java学习路线
- 【转】深度学习路线
- 【转】学习路线1
- 【转】学习路线3
- 【转】学习路线4
- .NET学习路线 (2)
- .NET学习路线 (2)
- JAVA学习路线 2
- java学习路线2
- Java学习路线2
- Linux学习路线(转)
- Log4Net 生成多个文件、文件名累加解决方法
- Python 运算符(算数 比较 赋值 位 逻辑 成员 身份 优先级)
- 软件工程文档
- 【validate-binary-search-tree】
- JVM模拟面
- 【转】学习路线2
- Swift3.0之基本语法01
- 我为什么喜欢用C#来做并发编程
- openwrt添加新设备支持
- 软件工程开发过程阶段及工具
- Noip2016 组合数问题
- 我为什么喜欢用C#来做并发编程
- ubuntu16.04下安装mysql详细步骤
- windows中使用Python进行AES加密解密-加密解密功能实现