- 浏览: 276493 次
- 性别:
- 来自: 武汉
最新评论
-
tuspark:
总结的不错,只是格式太规范。如果说最全面的泛型内容总结,我推荐 ...
Java泛型编程最全总结 -
huihui_0218:
泛型方法go的调用fg.<String>go(&q ...
Java泛型编程最全总结 -
fantaxy025025:
楼主总结的不错~赞一个!
Java泛型编程最全总结 -
rocksword:
<name> hbase.tmp.dir</ ...
Fedora13中安装HBase笔记 -
lijunwyf41:
public static void main(String[ ...
Java泛型编程最全总结
文章列表
题目:
输入一个英文句子,翻转句子中单词的顺序,但单词内字符的顺序不变。句子中单词以空格符隔开。为简单起见,标点符号和普通字母一样处理。
例如输入“I am a student.”,则输出“student. a am I”。
分析:
由于编写字符串相关代码能够反映程序员的编程能力和编程习惯,与字符串相关的问题一直是程序员笔试、面试题的热门题目。本题也曾多次受到包括微软在内的大量公司的青睐。
由于本题需要翻转句子,我们先颠倒句子中的所有字符。这时,不但翻转了句子中单词的顺序,而且单词内字符也被翻转了。我们再颠倒每个单词内的字符。由于单词内的字符被翻转两次,因此顺序仍然和输入时的顺序保持一 ...
- 2012-07-29 22:07
- 浏览 1037
- 评论(0)
问题
判定一个正整数是否是一个回文数。例如12121是回文数,而1231不是回文数。
解法1:转换成字符串再判断
要判断一个整数是否是回文数,最自然的想法是把整数转换成一个字符串,然后根据回文的对称特性进行判断。数字转换为字符串可以通过itoa函数实现,判断字符串是否为回文字符串代码如下:
bool isPalindrome(string &str)
{
int begin = 0, end = str.length()-1;
while (begin < end) {
if (str[begin] == str[end]) {
...
- 2012-07-29 16:47
- 浏览 19397
- 评论(0)
问题:从一列数中筛除尽可能少的数使得从左往右看,这些数是从小到大再从大到小的(网易)。
解法:这是双端 LIS 问题,用 DP 的思想可解,目标规划函数
max{ b[i] + c[i] }, 其中 b[i] 为从左到右, 0 ~ i 个数之间满足递增的数字个数; c[i] 为从右到左, n-1 ~ i 个数之间满足递增的数字个数。最后结果为 n - max + 1。其中 DP 的时候,可以维护一个 inc[] 数组表示递增数字序列,inc[i] 为从小到大第 i 大的数字,然后在计算 b[i] c[i] 的时候使用二分查找在 inc[] 中找出区间 inc[0] ~ inc[i-1] ...
- 2012-07-29 15:52
- 浏览 1204
- 评论(0)
问题
给定一个长度为N的数组,找出一个最长的单调自增子序列(不一定连续,但是顺序不能乱)。例如:给定一个长度为6的数组A{5, 6, 7, 1, 2, 8},则其最长的单调递增子序列为{5,6,7,8},长度为4.
解法1:最长公共子序列法
这个问题可以转换为最长公共子序列问题。如例子中的数组A{5,6, 7, 1, 2, 8},则我们排序该数组得到数组A‘{1, 2, 5, 6, 7, 8},然后找出数组A和A’的最长公共子序列即可。显然这里最长公共子序列为{5, 6, 7, 8},也就是原数组A最长递增子序列。最长公共子序列算法在算法导论上有详细讲解,这里简略说下思想。
假定两个 ...
- 2012-07-29 15:25
- 浏览 37828
- 评论(0)
问题
给定一个有序数组,数组元素升序排列,试将该数组转换为一棵平衡二叉搜索树(Balanced Binary Search Tree)。
思路
这个问题用递归很容易解出来。考虑下面一棵二叉搜索树:
这是一棵平衡的二叉搜索树,所谓平衡的定义,就是指二叉树的子树高度之差不能超过1。
如果要从一个有序数组中选择一个元素作为根结点,应该选择哪个元素呢?我们应该选择有序数组的中间元素作为根结点。
选择了中间元素作为根结点并创建后,剩下的元素分为两部分,可以看作是两个数组。这样剩下的元素在根结点左边的作为左子树,右边的作为右子树。、
解法
由上面的思路,我们可以在O(N)的时间内从有序数 ...
- 2012-07-26 08:27
- 浏览 5283
- 评论(0)
由于发到iteye上面格式乱了,需要的朋友可以下载附件。
JAVA泛型编程笔记
1介绍
Java泛型编程是JDK1.5版本后引入的。泛型让编程人员能够使用类型抽象,通常用于集合里面。下面是一个不用泛型例子:
List myIntList=new Li ...
解决ubuntu下pdf乱码问题
- 博客分类:
- linux杂谈
两行命令即可解决ubuntu下pdf文件的乱码问题。
sudo apt-get install poppler-datasudo mv /etc/fonts/conf.d/49-sansserif.conf /etc/fonts/conf.d/49-sansserif.conf.backup
最近出了windows8的消费者预览版,一时手痒就装上了。本来的系统是win7+ubuntu11.10双系统,ubuntu是直接硬盘安装在G盘,引导用的就是默认的grub。装了win8后,覆盖了ubuntu的启动项,所以在网上搜了下资料解决了。步骤如下:
找一张ubuntu的光盘(不限版本,11.04以上的最好,我用的是11.04的盘,因为11.10的盘不知道哪去了),然后改系统从光盘启动,进入临时ubuntu系统,选择“试用ubuntu”。
运行命令:sudo fdisk -l (这里不是数字1,是字母l),找到ubuntu所在分区。由于我的是装在G盘,所以显示为sda8。
运行命令: ...
Java容器类分析之List、ArrayList、Vector
List是接口,声明了各个方法,不多说。且看ArrayList类。
ArrayList类的成员变量有Object[]
elementData,int
size
算法导论第二章习题答案
2.1插入排序
2.1-1-2.1-2略过。
2.1-3
查找问题:
输入:一列数A={a1,
a2, ...an}和值v。
输出:下标i,使得v=A[i],若v不在A中,则输出NIL
Cassandra中BloomFIlter实现详解
零、BloomFilter原理概述
http://hi.baidu.com/waxiga/blog/item/33ef2ff49b138530bd3109ad.html
http://pages.cs.wisc.edu/~cao/papers/summary-cache/node8.html(cassandra中用到了其中的结论,特别注意那个表格)
一、从getFilter()函数入手
1.1第一个
Cassandra中失效检测原理
一、传统失效检测及其不足
传统失效检测方法
在分布式系统中经常使用心跳(Heartbeat)来检测Server的健康状况,但从理论上来说,心跳无法真正检测对方是否crash,主要困难在于无
法真正区别对方是宕机还是“慢”。传统的检测方法是设定一个超时时间T,只要在T
Cassandra启动过程详解这里的分析从CassandraDaemon.java文件开始。一、配置文件storage-config.xml的读取和log4j的配置文件log4j.property的设置。配置文件的读取和解析都是在 org.apache.cassandra.config.DatabaseDescriptor 类中完成的,这个类的作用非 ...
Cassandra数据模型
几个概念
Cluster:集群,一个逻辑上的cassandra实例包含的节点。一个集群可以包含多个keyspace。
Keyspace:Column Family的名字空间,通常是一个应用一个keyspace。
Column Family:包含多个column,每个column包括name,value, timestamp。Column Family通过Row key引用。
Super Column:可以看作其column包含subcolumn。
Column:包括name,value, timestamp。
Columns
Column是数据写入最小单元。 ...
约瑟夫环非递归算法和递归算法分析与实现(ZZ)
- 博客分类:
- 算法
【Joseph问题描述】
n个人(编号0~(n-1)),从0开始报数,报到(m-1)的退出,剩下的人继续从0开始报数。求胜利者的编号。
【求解思路】
1.非递归算法
我们知道第一个人(编号一定是m%n-1) 出列之后,剩下的n-1个人组成了一个新的约瑟夫环(以编号为k=m%n的人开始):
k k+1 k+2 ... n-2, n-1, 0, 1, 2, ... k-2
并且从k开始报0。
现在我们把他们的编号做一下转换:
k --> 0
k+1 --> 1
k+2 --> 2
...
...
k-2 --> n-2
k-1 --> n-1
变 ...