Symbol | frequency |
a | .3 |
b | .24 |
c | .2 |
d | .16 |
e | .1 |
First combine d and e yielding a cumulative Frequency of .26 Next combine b and c yielding a cumulative Frequency of .44 Next combine a and (d e) yielding a cumulative Frequency of .56 Next combine (a d e) and (b c) yielding a cumulative Frequency of 1.00 This yoelds the tree in list notation (1.00 (.56 (.3=a) (.26 (.16=d)(.1=e))) (.44 (.24=b) (.2=c)) ) And then using the convention of 0 to the left 1 to the right Symbol Huffman-code a 00 b 10 c 11 d 010 e 011 There are other solutions based on the convention for labeling left and right but all of them will have the lengths of the ones above.
S -> NP VP NP -> art ADJL noun | art noun ADJL -> adj ADJL | adj VP -> verb NP | verb
father(sam, bill) father(ben, bill) father(bill, joe) father(mary, joe) mother(ralph, mary) parent(X,P) :- father(X,P). parent(X,P) :- mother(X,P). sibling(X,Y) :- parent(X,P), parent(Y,P).