24小时热门版块排行榜    

查看: 1291  |  回复: 2

hu123rong00

铜虫 (小有名气)

[求助] 位倒序——半字节查表法

我想实现一个字节的倒序,例如  11001100  ---->  00110011.
用半字节查表法怎么做啊?请高手讲解一下原理?或者还有其他快速的算法
回复此楼
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

sudo

木虫 (正式写手)

就是从0000到1111的倒序先保存在一个数组中,比如:
CODE:
0000 -> 0000
0001 -> 1000
0010 -> 0100
...

于是这个数组就是:
CODE:
i   rev[i]
0   0
1   8
2   4
...

构造好数组rev后,就可以这么查表了:
CODE:
unsigned char byteReverse(unsigned char b){
        return (rev[b&0xF]<<4) | rev[b>>4];                //注意rev如果不是有符号或无符号型int数组的话,需要强制转换一下
}

2楼2012-03-07 09:14:19
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

xqc1123

银虫 (小有名气)

【答案】应助回帖

★ ★ ★
感谢参与,应助指数 +1
hu123rong00: 金币+3, ★有帮助 2012-03-27 15:09:17
楼主我想到一个算法,具体代码还需要楼主自己实现:

1.将字节序列存储在一个char数组里,或者根据字节个数动态生成数组,保存数组大小N(如果字节序列是根据一个整数生成还要写一个将10进制转换为二进制的函数,楼主可以在网上找找)

2.如果N为奇数,数组中间元素不变,取中间元素两边的子数组互换位置

3.对每个需要互换位置的子数组循环执行2步骤,直到子数组元素为一个时返回
(这里楼主可以写一个函数,接受一个char指针和子数组大小.然后迭代求解)

飞鱼的眼泪,大海懂~~
3楼2012-03-07 09:15:07
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
相关版块跳转 我要订阅楼主 hu123rong00 的主题更新
最具人气热帖推荐 [查看全部] 作者 回/看 最后发表
[考博] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 YHiw1gou1Eda 2026-11-10 4/200 2026-11-11 17:36 by TgvkbZZl9tqB
[公派出国] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +5 FChKX8meu1ds 2026-11-09 10/500 2026-11-11 17:25 by TgvkbZZl9tqB
[公派出国] 售SCI-T0P文章,我:8O.5.5.1.O.54,科目齐全,可+急 +3 FChKX8meu1ds 2026-11-09 7/350 2026-11-11 17:20 by TgvkbZZl9tqB
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O54,科目全,可伽急 +5 FChKX8meu1ds 2026-11-09 8/400 2026-11-11 17:11 by TgvkbZZl9tqB
[教师之家] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +5 0TEMgxdT1eIw 2026-11-09 7/350 2026-11-11 16:58 by TgvkbZZl9tqB
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +6 zSbvVX9JFl9J 2026-11-09 8/400 2026-11-11 16:49 by TgvkbZZl9tqB
[考研] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +5 zSbvVX9JFl9J 2026-11-09 6/300 2026-11-11 16:47 by TgvkbZZl9tqB
[考研] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +3 Z7qfCsdIiD1T 2026-11-10 4/200 2026-11-11 15:24 by TgvkbZZl9tqB
[基金申请] 售SCI文章,我:8O5.5.1.O.54,科目齐全,可+急 +3 czAiolzR0IJC 2026-11-10 4/200 2026-11-11 15:13 by TgvkbZZl9tqB
[硕博家园] 售SCI一区T0P文章,我:8.O.55.1.O.5.4,科目全,可+急 +3 FChKX8meu1ds 2026-11-09 5/250 2026-11-11 13:56 by cdqGD6ftHmbl
[考研] 售SCI一区文章,我:8O5.5.1.O5.4,科目全,可伽急 +6 cqv1zKnzd7hr 2026-11-09 8/400 2026-11-11 13:39 by cdqGD6ftHmbl
[考研] 售SCI一区T0P文章,我:8O.55.1.O.5.4,科目齐全,可+急 +4 czAiolzR0IJC 2026-11-10 4/200 2026-11-11 12:14 by gRND4NVAZ8VG
[教师之家] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 cqv1zKnzd7hr 2026-11-09 6/300 2026-11-11 10:32 by 1Nb0IVlmV6v0
[基金申请] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 zSbvVX9JFl9J 2026-11-09 5/250 2026-11-11 10:10 by 1Nb0IVlmV6v0
[考研] 售SCI一区T0P文章,我:8.O55.1.O.54,科目全,可十急 +5 ttH3f1oA6ace 2026-11-04 11/550 2026-11-11 08:54 by Equinoxhua
[硕博家园] 售SCI一区T0P文章,我:8O.55.1.O.54,科目全,可伽急 +5 5sJFDKp2kwuI 2026-11-06 16/800 2026-11-09 11:47 by GwrQVVR6Oenx
[公派出国] 售SCI一区文章,我:8.O.55.1.O.54,科目齐全,可伽急 +4 5sJFDKp2kwuI 2026-11-06 8/400 2026-11-09 00:14 by l48hFd8Nwae2
[教师之家] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +4 5sJFDKp2kwuI 2026-11-06 8/400 2026-11-08 23:01 by l48hFd8Nwae2
[公派出国] 售SCI一区T0P文章,我:8.O.55.1.O.54,科目齐全,可+急 +5 ttH3f1oA6ace 2026-11-04 10/500 2026-11-06 16:12 by 5sJFDKp2kwuI
[考博] 售一区SCI文章T0P,我:8O.551.O54,科目全,可十急 +4 ttH3f1oA6ace 2026-11-04 7/350 2026-11-06 02:13 by qL1cU46YIdK0
信息提示
请填处理意见