Link Search Menu Expand Document

Computer Science Engineering Books

Computer Science Engineering related books. Confined to foundational subjects on which CSE stands.


Table of contents

  1. Algorithms
  2. Compilers
  3. Computer Architecture
  4. Database
  5. Data Structures
  6. Mathematics
  7. Networks
  8. Operating Systems
  9. Programming
  10. Security
  11. Topics
    1. Distributed Systems
    2. Linux
    3. p2p
    4. Regular Expressions

Algorithms

  • Grokking Algorithms – Aditya Y. Bhargava
  • The Algorithm Design Manual – Steve S. Skiena
  • Introduction to Algorithms – Cormen, Lesiserson, Rivest, Stein
  • Algorithm Design – Jon Kleinberg, Eva Tardos
  • Algorithms – Robert Sedgewick, Kevin Wayne
  • The Design and Analysis of Algorithms – Anany Levitin
  • Algorithms – S. Dasgupta
  • Algorithms - Notes for Professionals – GoalKicker

Compilers

  • Essensitals of Programming Language – Daniel P. Friedman, Mitchell Wand
  • Language Implementation Pattern – Terence Parr
  • Programming Language Pragmatics – Michael L. Scott
  • Engineering A Compiler – Keith D. Cooper, Linda Torczon
  • Crafting A Compiler – Rischer, Cytron, LeBLANC
  • Modern Compiler Implementation in C – Andrew W. Appel

Computer Architecture

  • Computer System’s: A Programmer’s Perspective
  • The Elements of Computing Systems – Noam Nisan, Shimon Schocken
  • Computer Organization and Design – Patterson, Hennessy
  • Computer Organization: A Quantative Approach – Patterson, Hennessy
  • Structured Computer Organization – Tanenbaum

Database

  • Fundamentals of Database System – Elmasari, Navathe
  • Database System Concepts – Sudarshan, Korth
  • Database system Concepts, Language & Architecture – Paolo Atzeni, Stefano Ceri
  • Database Management – Thomas Cannolly, Carolyn Begg

Data Structures

  • Data Structures Using C – Reema Thareja
  • Notes on Data Structures and Programming Techniques – James Aspnes

Mathematics

  • Invitation to Discrete Mathematics – Jirı Matousek Jaroslav Nesetril
  • Discrete Mathematics and it’s Applications – Rosen
  • A Programmer’s Introduction to Mathematics – Jeremy Kun
  • Discrete Mathematics – L. Lovasz, K. Vesztergombi
  • Discrete Mathematics with Applications – Susanna S. Epp
  • Computer Mathematics for Programmers – Abney, Rubin, Siberl
  • Discrete Mathematics for Computer Scientists – Stein, Drysdale, Bogart
  • Proofs and Fundamentals – Ethan D. Bloch

Networks

  • Computer Networking: A Top Down Approach – Kurose, Ross
  • Data Communications and Networking – Behrouz
  • Computer Networks – Tanenbaum
  • TCP/IP Illustrated: The Protocolas (Volume I) – Richard Stevens, Kevin R. Fall
  • Data Communications and Networking* – Forouzan
  • Network Warrior – Gary A. Donahue
  • Internet Routing Architectures – Sam Halabi, Danny McPherson

Operating Systems

  • Operating System Concepts – Silberschatz
  • The Linux Programming Interface – Michael Kerrisk
  • Operating Systems: Three Easy Pieces – Remzi, Andrea Arpaci-Dusseau
  • Understanding Operating Systems – Ann McIver McHoes, Ida M. Flynn
  • Think OS – Allen B. Downey

Programming

  • How to Design Programs – Felleisen, Findler, Flatt, Krishnamurthi
  • Structure and Interpretation of Program – Gerald Jay Sussman, Hal Abelson

Security

  • Hacking: The Art of Exploitation – Jon Erickson
  • The Infosec Handbook – Hodeghatta Rao, Nayak
  • Black Hat Python – Justin Seitz
  • PoC || GTFO – Manul Laphroaig
  • Practical Malware Analysis – * Michael Sikorski, Andrew Honig*
  • Serious Cryptography – Jean-Philippe Aumasson
  • The Web Application Hacker’s Handbook – Dafydd Stuttard, Marcus Pinto
  • Security Engineering – Ross Anderson

Topics

I think these sub-sections are sufficient. At present, I don’t care about the books related to Computer Graphics, Digital Signal Processing, AI, Machine Learning etc.

Distributed Systems

  • Distributed Systems: Fun & Profit – Mikito Takada
  • Designing Data-Intensive Application – Martin Kleppmann
  • Introduction to Reliable & Secure Distributed Programming – Cachin, Guerraoui, Rodrigues
  • Principles of Distributed Computing – Roger Wattenhofer
  • Distributed Systems – Marteen, Tanenbaum
  • Designing Distributed Systems – Brendan Burns

Linux

  • Linux Pocket Guide – Daniel J. Barrett
  • Linux System Administration – Tom Adelstein and Bill Lubanovic
  • Unix and Linux System Administration Handbook – Nemeth, Synder, Hein, Whaley, Mackin
  • Linux in a Nutshell – Siever, Figgins, Love, and Robbins
  • Classic Shell Scripting – Arnold Robbins, Nelson H. F. Beebe
  • Linux Cookbook – Michael Stutz
  • Advacned Programming in Unix Environment – W.Richard Stevens, Stephen A. Rago
  • Sed & Awk – Dale Dougberty, Arnold Robbins

p2p

  • Handbook of Perr-To-Peer Networking – Shen, Yu, Buford, Akon
  • Peer to Peer: Harnessing the Power of Disruptive Technologies – Andy Oram

Regular Expressions

  • Mastering Regular Expressions – Jeffrey E. F. Friedl
  • Regular Expressions Pocket Reference – Tony Stubblebine

Copyright © ∞ Rishi Giri