面试常问的一些算法,JAVA实现。 查找、动态规划、贪婪法、最短路径优先算法、字符串、递归、排序等

项目编码是UTF-8 算法清单 按eclipse的文件排序

binary_search:二分查找

dynamic_planning(动态规划):硬币找零问题、最长公共子序列、最大子数组和、字符串S变为T的最少操作数、从矩阵左上角走到右下角、和最小的走法、0-1背包问题

greed(贪婪法):活动安排问题、普通背包问题

KMP:KMP算法

MST(最短路径优先(面试中不常见,本人从来没见过)):Dijkstra、Kruskal、Prim

joseph_ring:约瑟夫环

simple_quesion(字符串、递归等简单问题):找出数组中唯一的重复元素、找出数组中只出现一次的数字、判断一个数是否是2的N次方 、求n个给定自然数的排列   & 求n个给定自然数中的r个数的组合、字符串反转、递归问题:台阶的迈法、两个有序数组,求交集,多线程打印 sort(排序算法):冒泡排序、堆排序、并归排序、快排