algorithm
proudmore
这个作者很懒,什么都没留下…
展开
-
Knapsack 问题
class Knapsack{int volume; int dp[][];int knap(int v, int[]array) { volume=v; int n=array.length; dp=new int[n][v+1]; for(int i=0;i<n;i++) { for(int j=0;j<v+1;j++)dp[i][j]=-原创 2015-05-14 08:02:19 · 366 阅读 · 0 评论 -
Distributed algorithm
Atomic commit two-phase commit protocol Coordinator Cohort QUERY TO COMMIT原创 2015-06-22 02:15:20 · 288 阅读 · 0 评论 -
2Sum on BST
这个题出现在zenefits的电面中过. 要求time: O(n), space:O(lgn). 先找到最左和最右node,然后同时开始非递归遍历。一个找后继,一个找前继import java.util.Stack; public class MJ { public static void main(String[] args) { // TODO Auto-generate原创 2015-05-22 07:58:51 · 311 阅读 · 1 评论 -
线段树
一道使用线段树的题目: 给定一个自然数集合,自然数的范围是[0,30000],现在已知N条线段,每条线段以[a,b]的形式给出,现在有M个数字,要求判断每个数字分别在多少条线段上出现过; 一般解法是将M个数字分别于N条线段比较判断,时间复杂度为O(MN);可以利用线段树记录N条线段在[0, 30000]范围内出现的次数和位置,然后利用二叉树的O(logN)查找时间判断每转载 2015-05-09 07:17:09 · 316 阅读 · 1 评论 -
GeoHash核心原理解析
原帖地址 http://www.open-open.com/lib/view/open1417940079964.html 引子 机机是个好动又好学的孩子,平日里就喜欢拿着手机地图点点按按来查询一些好玩的东西。某一天机机到北海公园游玩,肚肚饿了,于是乎打开手机地图,搜索北海公园附近的餐馆,并选了其中一家用餐。 饭饱之后机机开始反思了,地图后台如何根据自己所在转载 2015-06-08 08:12:10 · 212 阅读 · 0 评论 -
binarytree serialization
序列化与反序列化,用前序遍历,因为inorder 和 postorder都找不到rootpublic class Serialization { static String serialize(TreeNode root) { if(root==null)return "#"; else { return roo原创 2015-06-09 10:55:02 · 176 阅读 · 0 评论