算法索引

  • 查找

The search tool for java.(java 查询工具)

java 如何实现 binary search 二分查找法?

  • sort

The sort tool for java.(java 排序工具)

sort-00-排序算法汇总

sort-01-bubble sort 冒泡排序算法详解

sort-02-QuickSort 快速排序到底快在哪里?

sort-03-SelectSort 选择排序算法详解

sort-04-heap sort 堆排序算法详解

sort-05-insert sort 插入排序算法详解

sort-06-shell sort 希尔排序算法详解

sort-07-merge sort 归并排序

sort-08-counting sort 计数排序

sort-08-bucket sort 桶排序

timesort

java big file sort 超大文件如何实现排序?外归并排序(External merge sort)

  • 五大算法

五大基本算法概览

五大基本算法之回溯算法 backtracking

五大基本算法之分治算法 Divided

五大基本算法之动态规划算法 DP dynamic programming

五大基本算法之穷举算法

五大基本算法之贪心算法 Greedy

绝世武功

韦小宝:“就这样去,会不会太危险了? ”
陈近南:“不会,因为我可以教你绝世武功啊! ”
说着从袖子里面拿出一本书,上书“绝世武功”四个大字 
韦小宝:“真的是绝世武功! ”
陈近南:“这本不过是绝世武功的目录,那些才是绝世武功的秘籍。”

实现

C 更加接近于底层,建议数据结构使用 C 的形式。

同时写一份 java 实现。

算法使用 java 实现。

数据结构与算法二者分开,整理为工具包。

学习方式

兼听则明,偏听则暗。

学习的时候以一本书为主,多本书为辅助。

协助查询一点资料。

实战

可以刷一遍 leetcode 算法题。

省的每次都被无聊的算法面试恶心到。

也提升自己的基本功,便于工具框架的编写。

书籍

《大话数据结构》

《啊哈!算法》

《算法之道》

《算法导论_第三版》

《数据结构与算法分析:C语言描述+中文版》

《C++数据结构与算法 第4版》

《图灵程序设计丛书 算法 第4版》

后续

《数学之美》

《演化程序 遗传算法和数据编码的结合》

《遗传算法与工程优化》

《数据挖掘十大算法》

《机器学习算法原理与编程实践》

高德纳

刷题的系列

leetcode 的题目,

基本包含 《剑指 offer》

《编程之美》

《算法导论》

为什么写这个系列

数据结构 = 算法 + 数据结构

其他的只是一些业务上的知识,比较好学习。

算法算是几百年来,所有科研人员的智慧结晶。值得一次次地学习。

一切的基础,应该从这里开始。

千里之行,始于足下。