While using the Booth algorithm, performance is good if the multiplier pattern is continuously of same type. it takes the negative value of actual number with multiplier when it goes from 0 to 1 and takes the positive value if it is making the moving from 1 to 0.
eg:
1) multiplying by 1
x *1 = x*2 -x
2) multiplying by 6 (110)
x* 6 = 8*x - 2*x
here it starts scanning from right most bit (it initialize the first bit to 0) and takes the negative of number when it encounter 0 to 1 transition(-2*x) and takes the positive of number(8*x) when it goes from 1 to 0 (or end of bit).
Therefore, here options (1) and (4) give the better performance, because in both cases it has to take only once the positive of the number and once the negative of the number.