مرجع: http://cseweb.ucsd.edu/classes/sp11/cse202-a/lecture8-final.pdf
http://cseweb.ucsd.edu/classes/sp11/cse202-a/lecture9-final.pdf