本月博客排行
-
第1名
Xeden -
第2名
fantaxy025025 -
第3名
bosschen - paulwong
- johnsmith9th
- zysnba
- xiangjie88
- lerf
年度博客排行
-
第1名
青否云后端云 -
第2名
宏天软件 -
第3名
gashero - gengyun12
- wy_19921005
- vipbooks
- e_e
- benladeng5225
- wallimn
- javashop
- ranbuijj
- jickcai
- fantaxy025025
- zw7534313
- qepwqnp
- 解宜然
- ssydxa219
- zysnba
- sam123456gz
- sichunli_030
- tanling8334
- arpenker
- gaojingsong
- xpenxpen
- kaizi1992
- robotmen
- jh108020
- wiseboyloves
- ganxueyun
- xyuma
- wangchen.ily
- xiangjie88
- Jameslyy
- luxurioust
- mengjichen
- lemonhandsome
- jbosscn
- zxq_2017
- nychen2000
- lzyfn123
- wjianwei666
- forestqqqq
- ajinn
- siemens800
- hanbaohong
- zhanjia
- java-007
- Xeden
- 喧嚣求静
- mwhgJava
最新文章列表
后缀数组模板
//后缀数组模板
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}?如果这样要求的话,那该怎么做?