来源:http://t.cn/8skZJe2
算法虐我千百遍,我待算法如初恋
这里的内容是我学习算法过程的一些记录,希望能一直坚持下去。
这些算法全部自己敲一遍:
交换排序算法
线性排序算法
块
中顺序查找动态查找表
,是因为表结构是查找的过程中动态生成的)二叉查找树
)这是一个算法题目合集,题目是我从网络和书籍之中整理而来,部分题目已经做了思路整理。问题分类包括:
还有部分来自算法网站和书籍:
《剑指offer》 《编程之美》 《编程之法:面试和算法心得》 《算法谜题》 都是思维题
《编程珠玑》Programming Pearls 《编程珠玑(续)》 《数据结构与算法分析》 《Algorithms》 这本近千页的书只有6章,其中四章分别是排序,查找,图,字符串,足见介绍细致
《算法设计与分析基础》 《算法引论》 告诉你如何创造算法 断货 《Algorithm Design Manual》算法设计手册 红皮书
《算法导论》 是一本对算法介绍比较全面的经典书籍
《Algorithms on Strings,Trees and Sequences》 《Advanced Data Structures》 各种诡异高级的数据结构和算法 如元胞自动机、斐波纳契堆、线段树 600块
《深入理解计算机系统》 《TCP/IP详解三卷》 《UNIX网络编程二卷》 《UNIX环境高级编程:第2版》
《The practice of programming》 Brian Kernighan和Rob Pike 《writing efficient programs》 优化 《The science of programming》 证明代码段的正确性 800块一本
《数学建模十大经典算法》 《数据挖掘领域十大经典算法》 《十道海量数据处理面试题》 《数字图像处理领域的二十四个经典算法》 《精选微软等公司经典的算法面试100题》
The-Art-Of-Programming-By-July 微软面试100题 程序员编程艺术
http://sjjg.js.zwu.edu.cn/SFXX/sf1/sfys.html http://www.cs.usfca.edu/~galles/visualization/Algorithms.html
leetcode openjudge 开放在线程序评测平台,可以创建自己的OJ小组 九度OJ
这有个ACM训练方案
高级数据结构和算法 北大教授张铭老师在coursera上的课程。完成这门课之时,你将掌握多维数组、广义表、Trie树、AVL树、伸展树等高级数据结构,并结合内排序、外排序、检索、索引有关的算法,高效地解决现实生活中一些比较复杂的应用问题。当然coursera上也还有很多其它算法方面的视频课程。
算法设计与分析 Design and Analysis of Algorithms 由北大教授Wanling Qu在coursera讲授的一门算法课程。首先介绍一些与算法有关的基础知识,然后阐述经典的算法设计思想和分析技术,主要涉及的算法设计技术是:分治策略、动态规划、贪心法、回溯与分支限界等。每个视频都配有相应的讲义(pdf文件)以便阅读和复习