About the Author
Professors Goodrich and Tamassia are well-recognized researchers in computer security, algorithms and data structures, having published many papers on these subjects, with applications to computer security, cryptography, cloud computing, information visualization, and geometric computing. They have served as principal investigators in several joint projects sponsored by the National Science Foundation, the Army Research Office, and the Defense Advanced Research Projects Agency. They are also active in educational technology research, and they have published several books, including a widely adopted textbook on data structures and algorithms.
Michael Goodrich received his Ph.D. in computer science from Purdue University. He is currently a Chancellor’s Professor in the Department of Computer Science at University of California, Irvine. Previously, he was a professor at Johns Hopkins University. He is an editor for the Journal of Computer and Systems Sciences and the Journal of Graph Algorithms and Applications. He is a Fulbright Scholar, a Distinguished Scientist of the Association for Computing Machinery (ACM), and a Fellow of the American Association for the Advancement of Science (AAAS), the ACM, and the Institute of Electrical and Electronics Engineers (IEEE).
Roberto Tamassia received his Ph.D. in electrical and computer engineering from the University of Illinois at Urbana-Champaign. He is currently the Plastech Professor of Computer Science and the chair of the Department of Computer Science at Brown University. He is a founder and editor-in-chief for the Journal of Graph Algorithms and Applications. He previously served on the editorial board of Computational Geometry: Theory and Applications and IEEE Transactions on Computers. He is a Fellow of the Institute of Electrical and Electronics Engineers (IEEE).
In addition to their research accomplishments, the authors also have extensive experience in the classroom. For example, Goodrich has taught data structures and algorithms courses, including Data Structures as a freshman-sophomore level course, Applied Cryptography as a sophomore- junior level course, and Internet Algorithmics as an upper level course. He has earned several teaching awards in this capacity. Tamassia has taught Data Structures and Algorithms as an introductory freshman-level course and Computational Geometry as an advanced graduate course. Over the last several years he has developed "Introduction to Computer Systems Security," a new computer security course aimed at sophomores. His teaching of this course since 2006 has helped to shape the vision and topics of this book. One thing that has set his teaching style apart is his effective use of interactive hypermedia presentations integrated with the web.