This article is for non CS students who
are preparing for placement in an IT company. The views expressed are
my personal and you may always find a better way to prepare. One has
to focus on these 5 subjects i.e. C, C++, data structure, aptitude,
operating system ( very rarely companies ask questions from OS to non
CS guys.)
1. C ( or procedural programming)
All of us have read basics of
programming language in in our first year C++ course. Hence you
should not spend much time in very basic things such as data types,
variables, control statements, loops etc. Every book has initail 3 or
4 chapters dedicated to them. So if you are comfortable with them,
finish all such chapters in one or two readings. Important points can
be listed as -
Bitwise operators i.e. &, |, ^
Arrays, multi dimension array, arrays
and pointers
Calling a function by value, pointer
and referance ( reference will come in C++)
Pointers – Read this this throughly.
If possible, from more than one source.
String – Another very important
topic. Pointers and strings. And there are many ways of playing with
strings. More than one source recommended.
Recursive functions
Storage modifiers auto, register,
static, extern (just remeber the definition)
Preprocessor and macros
Memory allocation function
malloc,calloc, free etc.
Structures. Bit fields. Pointers and
structures.
Some basics of file IO.
This should take you a week. Solve the
programming examples. By solving I mean practice writing code, don't
run it on computer.
Books to refer – Yashwant Kanetkar,
Balasubramanim. Read only one book. Just for pointers and strings
take help of the other.
2. C++ (or Object Oriented
Programming)
Now you must we happy because you already know what
first 5 or 6 chapters of any C++ book are gonna teach you. You can
jump over to OOP.
Revisit pointers, strings and array
once. New and delete operator.
Principles of OOP – abstraction,
encapsulation, polymorphism and inheritance. You must be able to
explain them with examples from real life and code.
Classes, constructor, destructor,
function overloading, operator overloading.
Inheritance, virtual functions,
function overriding, abstract class etc
Book – I read SCHAUM’S
OUTLINE OF PROGRAMMING WITH c++.
Days required 7 to 10 days
3. Data Structure
CSE and ECE
students study this subjects in their second year. They should go
through at least till binary search trees. Other branch students may
just focus on link lists, searching and sorting and the basics of
other topics.
Time and space complexity
Searching algos – Binary search
Sorting algos – Bubble sort, Modified
bubble sort, selection sort, insertion sort, quick sort and heap
sort.
Also always remeber their time
complexity, which is used when
Stacks ans queues
Trees, mainly binary search trees (BST)
Heaps
Hash table
I refered to 'Data Structure through
C++' by Yashwant Kanetkar.
Dr. Niyogi's lecture slide are also good
and give quick referene to the topics.
4. Aptitude
Students tend to take this part lightly. But all companies ask questions from aptitude regardless which profile they belong to. So devote some time to it. Practice some question to gain speed and accuracy. If you are preparing for CAT, apti will be piece of cake for you. You can refer to R. S. Agarwal aptitude book if you don't feel confident.
5. Operating System
Few companies asked question from this section. I did not prepare for it. If you have time you can directly search OS question for interview.
Once you are done with the theory of a particular topic solve
as many question you may find. Search for previous year placement
papers and practice writing the code.
If you have any question or suggestion,
leave it in the comment.