Binary search algorithm- find the bit error position
Show older comments
I was trying to implement a binary search algorithm for two random strings. I can able to find the error, but I need to know, which bit position is in error and how to correct it.
X = randi([0,1],10,1);
Y =bsc(X,0.03);
iterate(X,Y)
%%
function res = binaryDivide(list)
n = length(list);
res= {list(1:floor(n/2)), list(floor(n/2)+1:n)};
end
function res = iterate(X,Y)
if length(X)>1
x=binaryDivide(X);
y=binaryDivide(Y);
if sum(x{1})~=sum(y{1})
iterate(x{1},y{1});
elseif sum(x{2})~=sum(y{2})
iterate(x{2},y{2});
end
else
disp([X,Y]);
end
end
1 Comment
Jan
on 20 Nov 2018
I've edited the question and applied a code formatting. It is not hard and improves the readability.
Accepted Answer
More Answers (0)
Categories
Find more on Creating and Concatenating Matrices in Help Center and File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!