随笔分类 -  算法小仓库

动态规划之多重背包问题
摘要:多重背包问题 1. 有N种物品和一个容量为V的背包。第i种物品最多有n[i]件可用,每件费用是c[i],价值是w[i]。求解将哪些物品装入背包可使这些物品的费用总和不超过背包容量,且价值总和最大。 这题目和完全背包问题很类似。基本的方程只需将完全背包问题的方程略微一改即可,因为对于第i种物品有n[i 阅读全文

posted @ 2016-11-25 16:12 enigmatic_child 阅读(151) 评论(0) 推荐(0)

动态规划之01背包和完全背包
摘要:01背包问题(注意看注释) 1. 有N件物品和一个容量为V的背包。第i件物品的费用是c[i],价值是w[i]。每种物品仅有一件,可以选择放或不放。求解将哪些物品装入背包可使价值总和最大。 f[i][v]表示前i件物品恰放入一个容量为v的背包可以获得的最大价值。则其状态转移方程是 f[i][v]=ma 阅读全文

posted @ 2016-11-25 16:11 enigmatic_child 阅读(198) 评论(0) 推荐(0)

无向图DFS和BFS
摘要:基本结构 DFS深度优先遍历 BFS广度优先遍历 符号图 public class SymbolGraph { private Map map; private String[] keys; private Graph G; public SymbolGraph(InputStream stream 阅读全文

posted @ 2016-11-25 16:10 enigmatic_child 阅读(312) 评论(0) 推荐(0)

红黑树
摘要:每次看算法书,遇到红黑树,我总是不由自主的跳过。一来觉得工作中好像用不到,二来也是因为懒,不想深入去纠结。今天,终于下定决心好好的了解一下红黑树的设计思想。 BinarySearchTree(二叉查找树) 首先,我们还是从最简单的二叉树说起。简单来说,就是左小右大(反着同理)。那么二叉树的问题在哪里 阅读全文

posted @ 2016-11-25 16:09 enigmatic_child 阅读(196) 评论(0) 推荐(0)

排序算法
摘要:恢复内容开始 参数检查 选择排序 / 检查参数 @param a @param @return / private static boolean isEmpty(T[] a) { return a == null || a.length == 0; } / 选择排序 @param a @param 阅读全文

posted @ 2016-11-25 16:07 enigmatic_child 阅读(124) 评论(0) 推荐(0)

导航