Page 56

Step 2 in the Alias Algorithm should read

  2. If Z < Q(Y) return X = Y, else return X = A(Y).

An algorithm written in java for constructing the Q and A arrays
is given  here

Page 88 Equation (2.26) is wrong. The corrected derivation is given

  • here

    Page 214

    The second to the last line of code should read j=16 instead of i=16
    

    Page 216

    Line 9 from the top, should be (as in 8=3 mod 5) instead of
    (as in 8=3 mod 3).
    

    Page 219

    Since the number of TH outcomes is 3, the first line of the
    displayed equation should have (3 - 0.25x20) instead of (4 - 0.25x20).
    This causes several other changes: V should be 7.6 instead of 7, in
    the 4th line from the top the probability should be 0.938 instead of
    0.906. In the 5th line the complement probability will be 0.062
    instead of 0.094 and in the 6th line the probability as a percent
    is 6.2 instead of 9.4. 
    

    Page 122/123

    Line 11 of the algorithm should be
    
      if U~U(0,1) < h then { x becomes y; Ex becomes Ey; }
    
    

    Page 125

    Line 12 of the algorithm
    
      if rand < h
        x = y; Hx = Hy;
      end