`
文章列表
问题:在有向图 ( 只有1 个开始节点, 1 个结束节点) 中判断任意两个节点是否为相同层次,不考虑环的情况, A,B为相同层次可以理解为经过A的数据流必然经过B,经过B的数据流也必然经过了A 例
题目:一个有趣的抛硬币问题 假设有一个硬币,抛出字(背面)和花(正面)的概率都是0.5,而且每次抛硬币与前次结果无关。现在做一个游戏,连续地抛这个硬币,直到连续出现两次字为止,问平均要抛多少次才能结束游戏?注意,一旦连续抛出两个“字”向上游戏就结束了,不用继续抛。   解答:设平均要抛T次硬币才能结束游戏。          首先简述一下抛硬币的过程。          1. 抛出第一枚硬币,硬币的状态决定后续需要抛出得次数(重要);          2. 如果硬币为花,重新开始,也就是需要再次抛出T次才能结束,注意这里运用递归的思想;          3. 如果硬币为字, ...
     通过校内认识的一个google同学,知道了leetcode(http://leetcode.com/onlinejudge)这个IT面试,在线评测网站,同学建议做完leetcode的所有题目,且代码在30-50之间并保证质量,做题时严格控制时间。于是决定从现在起开始leetcode上打怪升级,今天做了第一个题目,叫回文分割,题目地址在这里http://leetcode.com/onlinejudge#question_132。下面说说我的解题过程.      题目:Given a string s, partition s such that every substring o ...
  题目是这样的:请设计一个函数f(n),n是int32,让f(f(n))==-n对所有n成立? 要求不允许使用复数类的运算,不限制语言。如果不存在满足整个int32的f(n),那么尽可能让它对更多int32范围的n成立。                大拿的解法是:对于任意正奇数n,构造循环表[n,n+1,-n,-n-1]。这样就把所有数划分成了不相交的表,f(x)只要返回x所在的表中x的后继元素即可。剩下4个数未解决:0, INT_MAX, INT_MIN, -INT_MAX。显然INT_MIN无解。用同样的方法可以干掉INT_MAX和-INT_MAX,代价是f(f(0))=INT ...

[置顶] hulu面经

   2013年5月17号参加hulu前端面试,面试时间为下午1点,走进hulu就能看见一个会议室的门上贴上了一个印有你名字的白纸,表示这间会议室是你面试的地点,很人性化,也标志hulu对任何一个面试者的重视。      一面:1点面试开始,首先是一个年轻的面试官。hulu面试早就听说会是各种算法,果然如此,即使是前端面试。面试官gg首先是问了一下我做的项目,balala。然后就是算法面试。第一道题,给出一个整数序列,判断他是否是二叉排序数的后续遍历。首先我给的算法是,假设它是正确的后续遍历,且知道二叉排序数的中序遍历是该整数序列的递增序列,所以解法是看能否找出矛盾,面试gg说他不太清楚我这种 ...
http://lib.youionline.com:8888/JavaDecompiler/   因为自己有时候在发布上线一些功能时,想看发布工程某个class文件的源码,或修改源码中的配置(当然你可以写在配置文件当中),常常需要下载反编译软件,而且不同操作系统下载的软件不同,所以并萌发开发一个在线反编译class的工具,现在工具已经上线了,这是<a href="http://lib.youionline.com:8888/JavaDecompiler/">地址</a>,工具提供了同时多个文件上传功能,并瞬间提供源码的在线察看和下载,简介方便,欢迎大 ...
转载:http://sesame.iteye.com/blog/434088   动态切换IP的实现主是也由Windows的rasdial命令提供的,其实不是java的功劳,java只是调用一下bat脚本而已:rasdial命令:   拨号 Java代码   语法: rasdial  连接名称 username password   实例: rasdial 我的宽带 hzhz1234567890 dfdfdfdfdf   断网
    题目 :一块40kg的石头和一个天平,如果将石头分成4块,使得这四块石头通过天平称出1到40间任意整数重量的东西。        解题:从小数据的case出发,从重量为1开始,所以至少需要一块重量为1的石头,2可以由1+1或3-1组成,为了尽量表示更多的情况,选择重量为3的石头,那么1,3可以表示1,2,3,4。5不能表示,所以需要第三块石头,5可以由很多种情况表示,以选择表示的范围最大化为准,选择第三块石头为9,则1,3,9,可以表示从1到13,那么可想而知,第四块石头为27。  
   转载  http://community.topcoder.com/tc?module=Static&d1=tutorials&d2=lowestCommonAncestor   Introduction Notations Range Minimum Query (RMQ)
<html> <head> <meta http-equiv="content-type" content="text/html;charset=utf-8" /> <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1" /> </head> <body> <input type="text" id="input" ...

线段树学习

    博客分类:
  • acm
  学算法很久,经常看到线段树,但从来没有研究过,今天有时间仔细学习了一下,附上几位ACM大牛的博客地址,方便回顾。   线段树入门浅显易懂 http://hi.baidu.com/alpc62/item/be736a33a8864789f4e4ad18 简单扩展 http://hi.baidu.com/tkdsheep/item/d065ea06a576c932f3eafca6 线段树代码 http://old.blog.edu.cn/user4/246336/archives/2008/2133071.shtml  
原文地址http://justjavac.iteye.com/blog/1530097   编者按:2008年8月4日,StackOverflow 网友 Bert F 发帖提问:哪本最具影响力的书,是每个程序员都应该读的? “如果能时光倒流,回到过去,作为一个开发人员,你可以告诉自己在职业生涯初期应该读一本, 你会选择哪本书呢?我希望这个书单列表内容丰富,可以涵盖很多东西。” 很多程序员响应,他们在推荐时也写下自己的评语。 以前就有国内网友介绍这个程序员书单,不过都是推荐数 Top 10的书。 其实除了前10本之外,推荐数前30左右的书籍都算经典,笔者整理编译这个问答贴,同 ...
 题目:给定一个集合,求该集合的所有子集合,如集合{1,2}的子集合有{}(空集是所有集合的子集),{1},{2},{1,2},共2^2个子集合,下面给出两种解法,其中第一种解法分递归与非递归实现,都用java实现。   【第一种解法】     算法思想:给定一个集合,求子集合过程可分为以下两个步骤:       (1)把集合分为两部分,第一个元素和剩余元素,如{1,2,3}分为1和{2,3}       (2)原集合的所有子集合为剩余元素的子集合并上把第一个元素加入所有子集合,如{2,3}的子集合为{2},{3},{2,3},{},那么把第一个元素1加入这些子集合,则构成{1,2 ...
      今天偶然间在stackoverflow看到此图,主要讲解mysql left join,right join,inner join和outer join的区别,很是直观形象,贴出来和大家分享,也为自己日后方便察看和回顾。上图。            讲述很清晰,完全理解了。      原文链接http://www.codeproject.com/Articles/33052/Visual-Representation-of-SQL-Joins

自己的vim配置

    博客分类:
  • VIM
map <F9> :call SaveInputData()<CR> func! SaveInputData() exec "tabnew" exec 'normal "+gP' exec "w! /tmp/input_data" endfunc """""""""""""""""""""" ...
Global site tag (gtag.js) - Google Analytics