相关疑难解决方法(0)

汉明重量为Matlab中的整数列表

相当简单的问题:我有一个整数列表,例如,

 a = [7 8]
Run Code Online (Sandbox Code Playgroud)

现在我想要一个单独的列表,其中包含列表中每个整数的汉明权重(即二进制表示中的1位数).这意味着上面的整数列表的结果应如下所示:

 res = [3 1]
Run Code Online (Sandbox Code Playgroud)

任何人都知道如何快速完成这项工作?

binary matlab hammingweight

1
推荐指数
1
解决办法
2477
查看次数

Matlab:使用稀疏结构以二进制数加和的快速方法?

大多数答案仅针对已经回答的有关汉明重量的问题,但忽略了关于find稀疏性的观点.显然,通过夏嘉曦答案在这里解决了约找到一点-但我现在还无法验证它.我在这里的答案并没有利用其他答案的独创性,比如位移,但足够好的例子答案.

输入

>> mlf=sparse([],[],[],2^31+1,1);mlf(1)=10;mlf(10)=111;mlf(77)=1010;  
>> transpose(dec2bin(find(mlf)))

ans =

001
000
000
011
001
010
101
Run Code Online (Sandbox Code Playgroud)

目标

1
0
0
2
1
1
2    
Run Code Online (Sandbox Code Playgroud)

使用稀疏结构快速计算二进制数的1?

math binary matlab sparse-matrix

0
推荐指数
2
解决办法
3120
查看次数

标签 统计

binary ×2

matlab ×2

hammingweight ×1

math ×1

sparse-matrix ×1