# Grokking_algorithms_in_java **Repository Path**: juniorleng/Grokking_algorithms_in_java ## Basic Information - **Project Name**: Grokking_algorithms_in_java - **Description**: 图解算法java版本 - **Primary Language**: Java - **License**: Not specified - **Default Branch**: master - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2021-04-30 - **Last Updated**: 2021-04-30 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README # 《算法图解》 中所有例子的Java版实现 >代码已经更新到第10章 [《算法图解》的购买地址](https://item.jd.com/12148832.html) ## 内容提要 《算法图解》中所有的例子都使用Python实现,我们提供了这本书的所有Java实现代码,供Java程序员看书时使用。 chapter01:BinarySearch,二分排序算法 chapter02:SelectionSort,选择排序算法 chapter03:递归算法,CountDown和Factorial的例子 chapter04:Quick Sort快速排序,书上的例子用QuickSort实现,它对List排序,中间产生了很多临时List对象,效率较低; 因此还提供了为原生数组排序的QuickSortForArray算法,不产生临时对象,效率较高 chapter05:Hash table simple example,哈希表的简单范例。 chapter06:广度优先搜索 breadth-first search,寻找有向图中的最短路径 chapter07:dijkstra's algorithm, 寻找有向无环加权图中的最短路径 chapter08:Greed,贪心算法解决集合覆盖问题 chapter09:FindLongestPublicSubString,使用动态规划算来寻找"最长公共子序列"和"最长公共子串" chapter10:KNN,使用knn算法来预测面包店的销量(本算法书中并无代码)