Advertisements
Hi all,
i have a task which is create an algorithm from a java code.and i need help from u guys to check on my algo put a comment on what should i change or why it is wrong.
I really appreciate if u could help me on this matter...
thanks a lot.
here is my algorithm:
> Input: input configuration set,S (number of value for p1(v1), number of value for p2(v2),.....number of value for pn (vn)) number of interaction strength, t number of parameter, p Output: test case suite , A begin initialize binary_list as empty binary set; choose binary sets (in parameter order p1,p2,... pn) where number of bit '1' equal to t; push binary sets into binary_list; while binary_list not empty for each binary_list: b = binary set //count number of value combination base on b; initialize count = 1; for (i <= p) if b(i) = '1'; v(i); count = count * v(i); end if end for initialize repetition = 1; for (i<= p) if b(i) = '1' initialize current_combination = 0; initialize temp as an empty set of temporary test set; while (current_combination < count) initialize v_o_p = 0; choose value where parameter (i); insert or update v_o_p into temp; repeat same value for repetition time; end while repetition = repetition * v(i); end if else if b(i) = '0' choose value from parameter (i) randomly; update temp; end for end for each end while //write candidates into final test set while temp is not empty pop 1st test case in temp and push into A; for each of test case in temp: tc = test case compare tc to test case in A; if (compare == 0) insert tc into A; else remove tc in temp; end for each end while end the brief explanation by example: user input: set of parameter: A:a1,a2,a3; B:b1,b2,b3; C:c1,c2,c3 number of parameter= 3 the value of each parameter = 3 for A, 3 for B, 3 for C number of strength,t = 2 the set of binary in this case is = 3 (base on parameter orientation ABC) > 1- 011 > 2- 101 > 3- 110 operates for each binary set: example for binary set no 1= 011; starts from last bit which is '1'; so in empty set named temp for first bit should have: > xxc1 xxc2 xxc3 xxc1 xxc2 xxc3 xxc1 xxc2 xxc3 2nd bit, temp should have (updated temp): xb1c1 xb1c2 xb1c3 xb2c1 xb2c2 xb2c3 xb3c1 xb3c2 xb3c3 last round for 1st bit is '0', so should select randomly from parameter A's values: a1b1c1 a3b1c2 a2b1c3 a1b2c1 a3b2c2 a3b2c3 a2b3c1 a3b3c2 a1b3c3 this repeated until all binary sets operated with same operation. then all data in temp will be compared to each other if no duplicate data, push into final_set.