Touch-n-Pass Exam Cram Guide Series

Receive better grades in Computer Science courses

What's this all about?

Touch-N-Pass Exam Cram guides are a series of guides for various courses in Computer Science. Aimed at the welfare of the CS students in general and CSE DU (University of Dhaka, Bangladesh) students in particular, these guides provide valuable information on what to study for the exams, easy presentation of the complex topics, and solutions to the final exam question papers of CSE DU from past years.

The background behind the development of these guides is mainly the despair of the students who are totally new to computers and hence to the discipline of Computer Science. Through these guides, an attempt has been made to guide them towards this discipline - what to learn and how to learn.

Those who do not like the discipline of CS can use these guides as a means to just pass in the exams. However, those who want to do well in this field can also benefit from these guides — both from the exam grade point of view, as well as the learning point of view.

I've tried my best to provide correct information in the guides. However, if you find any mistake (either typographical or information error) in any guide, please consider taking time to drop me a message about it and help me improve the guides.

Design and Analysis of Algorithms

Graph Theory for Dummies

The book Graph Theory for Dummies is great for people who are afraid of implementing graph algorithms at labs. Students who think that algorithms are very hard to understand and even harder to code at the labs would find an excellent and easy method of learning algorithms as well as coding them. This book includes all the graph algorithms except Max-Flow.

Graph Theory for Dummies
Note: the images in the above PDF format may appear to be unclear and not understandable. You're better off with the Microsoft Word format below.

How to Write Recursive Functions on Your Own

I've found out that some students can't visualize the concept of a recursive function. In this article I've demystified the concept in an easy-to-understand approach.

NP-Completeness & Approximation Algorithms

In this guide I've presented the proof of some problems being NP-Complete and an approximate algorithm for the vertex-cover problem in plain Bangla (besides English) so that students may get the whole idea clearly and easily.

Algorithms Problem-Solutions

This guide contains solutions to some problems (primarily from CSE DU Algorithms Final Exam 2006 and In-course Exams 2008) with concepts explained in Bangla.

Algorithms Exam Guide

This is an incomplete exam guide.

Artificial Intelligence

Primary text used: Artificial Intelligence — A Modern Approach (2nd Edition), by Russell & Norvig.

C Programming

C Revisited

This guide was basically prepared for people who had learned C programming in the first semester and after a few semesters needed to refresh the concepts. The source code used in the guide has also been provided for downloading as CPP files.

Understanding Pointers in C — Concepts Test

Test your knowledge on C Pointers!

Compiler Design

Primary text used: Compilers — Principles, Techniques and Tools (2nd Edition), by Ullman et. al.

Computer Graphics Fundamentals

Primary text used: Computer Graphics: Principles & Practice (2nd Edition), by Foley et. al.

Computer Networks

Primary text used: Computer Networking: A Top-Down Approach (4th Edition), by Kurose & Ross.

Computer Peripherals

Primary text used: Computer Peripherals (Third Edition), by Cook & White.

Cryptography and Network Security

Primary text used: Cryptography and Network Security: Principles and Practices (Fourth Edition), by Stallings.

Database Management Systems

Primary text used: Database System Concepts (Fourth Edition), by Silberschatz

DBMS: An Interactive Tutorial

Being a great book for learning the basics of Database Management System, new-comers in Database with absolutely no idea of what a database is will find this book much useful. Starting from the very basics of designing a database, this book covers Entity-Relationship Model, SQL Queries, Relational Algebra Expressions and Database Indexing & Hashing.

DBMS-II Study Guide

This book covers the chapters of Object-Based Databases, Transactions, and Concurrency Control.

Database Exam Guide - 1

A very complete exam guide on DBMS. Covers the topics Entity-Relationship Model, Relational Algebra and SQL, Integrity and Security, BCNF, Storage and File Structure, Indexing and Hashing.
Note: all the chapter numbers are assigned according to the 4th edition of the text book.

Database Exam Guide - 2

This guide covers the chapters Object-Based Databases, Transactions, Concurrency Control, Data Analysis and Mining, Database System Architectures, Parallel Databases, Distributed Databases.
Note: all the chapter numbers are assigned according to the 5th edition of the text book.

Design Patterns

Primary text used: Design Patterns: Elements of Reusable Object-Oriented Software, by Gamma (a.k.a. Gang-of-Four).
Highly recommended text for learning: Head First Design Patterns: A Brain-Friendly Guide, by Freeman

The above guide book covers the Strategy, Bridge, Adapter, Observer, State and Command patterns.

Operating Systems

Primary texts used: Modern Operating Systems (Second Edition), by Tanenbaum; Operating Systems Concept (7th Edition), by Silberschatz

Operating Systems Study Guide

This is an excellent study book for learning concepts and algorithms used in operating systems in a visual and easy-to-understand way. Each chapter also has a cheat-sheet-type chapter-summary at the beginning so as to make the revision process pretty easy before exam.

A unique style of the book is that each algorithm is provided with its pros and cons and then further better algorithms are derived gradually to cover up the cons and finally having an algorithm that's the most suitable for use.

A few slides are also provided where some concepts have been explained in a better way using animations. Also, a Java application has been provided where Process Scheduling problems can be input and the program will output the solutions with visuals.

Operating Systems Exam Guide

Answers to most of the questions that are not answered in this exam guide can be found in the study guide.

Software Engineering

Primary text used: Software Engineering: A Practitioner's Approach (5th Edition), by Pressman.

System Programming

Primary text used: Unix System Programming Using C++, by Chan.

Theory of Computation (Automata Theory)

Primary text used: Introduction to Automata Theory, Languages and Computation (2nd Edition), by Ullman

Design and Analysis of VLSI Systems

Primary text used: Modern VLSI Design (4th Edition), by Wayne Wolf.

Note: This exam guide is hand-written and scanned.

About Me

I'm Sharafat Ibn Mollah Mosharraf, a graduate from the University of Dhaka in the discipline of Computer Science & Engineering. I'm a passionate Software Engineer currently working at Backpack Technologies, Inc.

I love researching as well as training people on state-of-the-art technologies for designing, developing, securing and maintaining web and mobile applications. My areas of interest include user experience, application security, application performance and designing scalable applications. I love passing my free time with my family.

If you'd like to know more about me, you're most welcome to take a tour at my personal website.


I usually try to respond in a few hours, and in most cases I reply promptly. However, please make sure to respond to the CAPTCHA presented on the next screen after you hit the Send Message button.