本月博客排行
-
第1名
龙儿筝 -
第2名
johnsmith9th -
第3名
wy_19921005 - zysnba
- sgqt
- lemonhandsome
年度博客排行
-
第1名
宏天软件 -
第2名
青否云后端云 -
第3名
龙儿筝 - gashero
- wallimn
- vipbooks
- benladeng5225
- wy_19921005
- fantaxy025025
- qepwqnp
- e_e
- 解宜然
- zysnba
- ssydxa219
- sam123456gz
- javashop
- arpenker
- tanling8334
- kaizi1992
- xpenxpen
- gaojingsong
- wiseboyloves
- xiangjie88
- ranbuijj
- ganxueyun
- sichunli_030
- xyuma
- wangchen.ily
- jh108020
- lemonhandsome
- zxq_2017
- jbosscn
- Xeden
- luxurioust
- lzyfn123
- zhanjia
- forestqqqq
- johnsmith9th
- ajinn
- nychen2000
- wjianwei666
- hanbaohong
- daizj
- 喧嚣求静
- silverend
- mwhgJava
- kingwell.leng
- lchb139128
- lich0079
- kristy_yy
最新文章列表
后缀数组模板
//后缀数组模板
int wa[maxn],wb[maxn],wv[maxn],ws[maxn];//这些都是需要用到的中间变量
int cmp(int *r,int a,int b,int l)
{
return r[a]==r[b]&&r[a+l]==r[b+l];
}
void da(int *r,int *sa,int n,int m)
//这里的n应该是字符串长度 + ...
自己实现的TrieTree,对比一下效率
运行环境:Win7,Java SDK6,默认配置
测试数据:
初始数据:20W
搜索数据:2W
从20W初始数据中查找2w待搜索数据,运行结果:
map used :19 ms, find: 19474
list used: 24303 ms, find: 19474
trie tree used: 163 ms, find: 19474
optimi ...
计算byte表示的二进制数据中,1出现的次数
无意中看到这个题目,开始想到的是把byte的二进制数据转为一个数组,然后再遍历数组,计算数组中1出现的次数。
感觉这应该是这简单,效率也比较低的做法。
在编程之美上看到如下做法:
把byte数据取2的模,如果余数为1则说明当前位置出现的是1,否则是0,然后不断把byte往右边移位,也就是除以2,
代码如下:
public static int countByte(byte b)
...
堆栈,利用pop()递归地把栈里的元素,从下向上逆着打印出来。
我是java编程新手,这个题目有些不懂,堆栈用pop()不是直接可以逆序输出吗,比如入栈{1,2,3,4,5},出栈{5,4,3,2,1}。题目中的要求用到递归,那是不是要求入栈{1,2,3,4,5},输出{1,2,3,4,5}?如果这样要求的话,那该怎么做?