算法--如何开始

 现在才真正体会到,要静下心来去默默的学,不去想他是否对我有用这实在是太不容易了。

现在才知道,数学对于算法的学习是多么重要。

整理下大牛说的算法:

对于我这个技能点数约等于0的人来说,当然从基础开始看起。  


下面的每个算法给我打上十到二十遍,同时自己精简代码,因为太常用,所以要练到写时不用想,10-15分钟内打完,甚至关掉显示器都可以把程序打出来.


1.最短路(Floyd、Dijstra,BellmanFord)


2.最小生成树(先写个prim,kruscal要用并查集,不好写)


3.大数(高精度)加减乘除


4.二分查找. (代码可在五行以内)


5.叉乘、判线段相交、然后写个凸包.


6.BFS、DFS,同时熟练hash表(要熟,要灵活,代码要简)


7.数学上的有:辗转相除(两行内),线段交点、多角形面积公式.


8. 调用系统的qsort, 技巧很多,慢慢掌握.


9. 任意进制间的转换



这些书是按照难易程度递进的顺序排放的:

  

 


   

  

 

Advanced Data Structures是MIT的高级数据结构教程,为什么会找到这个教程呢?因为GoogleAdvanced Data Structures第一个出来的就是这货。

这门课包含各种让本屌世界观崩坏的奇诡数据结构和算法,它们包括但不限于:


●带”记忆”的数据结构(Data Structure with Persistence)。


●van Emde Boas(逆天的插入,删除,前驱和后继时间复杂度)。


●o(1)时间复杂度的的LCA、RMQ和LA解法。


●o(lglgn)的BST。


MIT教授Erik Demaine则更为直接:


If you want to become a good programmer, you can spend 10 years programming, or spend 2 years programming and learning algorithms.




源于 原文链接:http://t.cn/8sBBEiC


这是下下个阶段要学习的 内容:

                                                                    10大数据挖掘算法

排名算法简单说明
1C4.5决策树分类
2K-meansk均值聚类
3Support Vector Machine(SVM)支持向量机分类
4Apriori关联规则挖掘
5Expectation Maximization(EM)最大期望算法
6PageRank链接分析
7AdaBoost集成算法
8K-Nearest Neighbors(KNN)K近邻分类
9Naive Bayes朴素贝叶斯分类
10CART分类和回归





  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值