代码改变世界

随笔档案-2012年8月14日

栈的push、pop序列-实现

2012-08-14 21:21 by coodoing, 3437 阅读, 收藏, 编辑
摘要: 1、问题描述 输入两个整数序列。其中一个序列表示栈的push顺序,判断另一个序列有没有可能是对应的pop顺序。为了简单起见,我们假设push序列的任意两个整数都是不相等的。 比如输入的push序列是1、2、3、4、5,那么4、5、3、2、1就有可能是一个pop系列。因为可以有如下的push和pop序列:push 1,push 2,push 3,push 4,pop,push 5,pop,pop,pop,pop,这样得到的pop序列就是4、5、3、2、1。但序列4、3、5、1、2就不可能是push序列1、2、3、4、5的pop序列。2、分析 这道题的一个很直观的想法就是建立一个辅助栈,每次pus 阅读全文

多个集合合并成没有交集的集合-实现

2012-08-14 17:50 by coodoing, 5234 阅读, 收藏, 编辑
摘要: 1、问题描述 将多个集合合并成没有交集的集合。 给定一个字符串的集合,格式如:{aaa bbb ccc}, {bbb ddd},{eee fff},{ggg},{ddd hhh}要求将其中交集不为空的集合合并,要求合并完成后的集合之间无交集,例如上例应输出{aaa bbb ccc ddd hhh},{eee fff}, {ggg}。 (1)请描述你解决这个问题的思路; (2)... 阅读全文

单链表是否有环和两个链表是否有公共节点问题

2012-08-14 16:40 by coodoing, 795 阅读, 收藏, 编辑
摘要: 1、单链表是否有环题目描述:有一个单链表,其中可能有一个环,也就是某个节点的next指向的是链表中在它之前的节点,这样在链表的尾部形成一环。问题: 1、如何判断一个链表是不是这类链表? 2、如果链表为存在环,如何找到环的入口点?一、判断链表是否存在环 设置两个指针(fast, slow),初始值都指向头,slow每次前进一步,fast每次前进二步,如果链表存在环,则fast必定先进入环,而slow后进入环,两个指针必定相遇。(当然,fast先行头到尾部为NULL,则为无环链表)。 1: boolean isExsitLoop() { 2: Node<T> slow ... 阅读全文

一致性hash算法-consistent hashing

2012-08-14 11:15 by coodoing, 541 阅读, 收藏, 编辑
摘要: 0、应用场景 在做服务器负载均衡时候可供选择的负载均衡的算法有很多,包括: 轮循算法(Round Robin)、哈希算法(HASH)、最少连接算法(Least Connection)、响应速度算法(Response Time)、加权法(Weighted )等。其中哈希算法是最为常用的算法。 典型的应用场景是: 有N台服务器提供缓存服务,需要对服务器进行负载均衡,将请求平均分发到每台服务器上,每台机器负责1/N的服务。 常用的算法是对hash结果取余数 (hash() modN):对机器编号从0到N-1,按照自定义的hash()算法,对每个请求的hash()值按N取模,得到余数i,然后将请求.. 阅读全文

Mathematica's Google Aptitude

2012-08-14 00:16 by coodoing, 367 阅读, 收藏, 编辑
摘要: The Billboard So perhaps it's no great surprise that Google utilizes unusually mathematically oriented recruitment techniques. In fact, these practices have received widespread coverage in the last f... 阅读全文
点击右上角即可分享
微信分享提示