本月博客排行
-
第1名
龙儿筝 -
第2名
flashsing123 -
第3名
xiaoxinye - e_e
- java_doom
- johnsmith9th
- gaochunhu
- sichunli_030
- zw7534313
- 深蓝传说
年度博客排行
-
第1名
宏天软件 -
第2名
龙儿筝 -
第3名
青否云后端云 - wallimn
- vipbooks
- gashero
- wy_19921005
- benladeng5225
- fantaxy025025
- zysnba
- e_e
- javashop
- sam123456gz
- tanling8334
- arpenker
- kaizi1992
- xpenxpen
- lemonhandsome
- xiangjie88
- ganxueyun
- xyuma
- sichunli_030
- wangchen.ily
- jh108020
- Xeden
- johnsmith9th
- zxq_2017
- zhanjia
- jbosscn
- forestqqqq
- luxurioust
- lzyfn123
- ajinn
- daizj
- wjianwei666
- ranbuijj
- 喧嚣求静
- silverend
- kingwell.leng
- lchb139128
- kristy_yy
- lich0079
- jveqi
- java-007
- sunj
- yeluowuhen
- lerf
- lstcyzj
- flashsing123
- lxguy
最新文章列表
后缀数组模板
//后缀数组模板
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}?如果这样要求的话,那该怎么做?