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