You are on page 1of 4

SOFTWARE:

1).Basics of Programming (mostly C –based questions, otherwise C++):


Number system, operators.
Hierarchy and associativity of operators (very small topic but, tricky one).
Escape sequences (\n, \t ….. ).
Datatypes, loops (for, while, do-while), if-else, switch.
Break, continue, iterations ( i++, ++i ..…).
Functions, pointers, recursion, arrays.
Strings, PREPROCESSOR DIRECTIVES/MACROS (most important topic for objective questions).
Dynamic memory allocation (malloc, calloc, realloc).
Structures, Unions, Enum ( Enum- enumeration – will not be asked mostly).

BITWISE OPERATORS (one of the most important topic for both objective and interviews).
AND, XOR, NOT (1’s complement), OR, left shift, right shift…

Storage classes (static, auto, extern, register), typedef, bitfileds.


Const, volatile.

How programming works? What is programming? What happens during compilation and execution?

2). DATA STRUCTURES:


Stacks, Queues, Linked lists (singly linked lists, doubly linked lists, circular linked lists..), Trees (binary
trees, avl trees, red-black trees…), Heaps, Graphs (not very important but learn).

3). OOPS AND TIME COMPLEXITIES:


Oops concepts (learn all the types and concepts), C++, few keywords in C++ like namespace,
constexpr… their usage and need.

4). ALGORITHMS:
Follow geeksforgeeks website and practice the algos. Dynamic programming is important for most of
companies like amazon, flipkart,…

5).NETWORKS:
No limitation u can read how much u can but, learn basic protocols and their use. Very easy and
interesting topic, So just read any book u like.

6).DATABASES:
Knowledge of Databases is helpful, few companies ask questions on DB.
Learn SQL, very easy programming language (syntax is similar to English)

7). Operating Systems:


Learn concepts of OS like scheduling, threading,… Follow the book mentioned.

LINKS AND REFERENCES:

Follow www.geeksforgeeks.org for any doubts and questions along with text book.
Search google for different answers of the problem u don’t get, try to understand the concept.
Try to solve problems on hackerrank and get habituated to the environment (many companies use
hackerrank platform to conduct online coding tests): www.hackerrank.com/ece
References:
2). For C programming read Let Us C by Yashwant kanetkar (if u are thorough with concepts read
Byron Gottrified too).
3). For C++, OOPS, data structures read Sumita Arora (Computer Science with C++ for Class 12 - A
book for CBSE students in class 11/12, soft copy is not available, if possible buy it :P)

4). Algos: try problems on geeksforgeeks.org

5). Networks:

Computer Networks - A Tanenbaum OR

Data communications and networking by Behrouz A Forouzon

6) .SQL and DB:

W3 schools for syntax and install Xampp server or any other software for practicing.

7). OS:

Just go through the book,

operating_system_concepts_silberschatz OR

Operating Systems - Internals and Design Principles - 7th E-William Stallings

Download the files at https://goo.gl/c3Gg8x

Few important points for hackerrank:

1). Read the question thoroughly twice and understand the constraints (most of u guys just read the
question once, neglected the constraints and input-output formats). for every question, a sample
input & sample output will be given with explanation, just go through it once.

2). It is necessary to read the input format and output format ( u just can't type some printf() or cout
statement to print "enter input" on to the screen and moreover there won't be any screen displayed
to fetch input or show some random characters u write).
The online coding sites are completely CASE-SENSITIVE, even a space or \r or \n....misuse leads to an
error. So, basically read the format allowed and then think of coding. Ur code may be correct and
small mistakes will lead to a wrong answer.

3). Please practice few challenges on the site before giving the test (whichever site the company may
use to conduct the test), most of them use hackerrank.com, few may use hackerearth.com or
codechef... very less companies use their own sites.

4). Get habituated to the environment (compiling, debugging, testing ...), like which character that
particular site uses to denote a new line.
some of them uses \r and someother uses \r\n.
UNIX based systems represent newline as \n where as DOS based uses \r\n to denote a newline.
u might have faced the problem of getting one extra character while finding the length of a string
using strlen() function. So, find urself howhackerrank.com or someother sites represent the newline.
link to the article:
http://stackoverflow.com/…/17610…/difference-between-n-and-r

5). U guys might have faced the problem of reading a blank line by gets() or getline() after scanf() or
cin. Why did u face that problem?
Instead of explaining just go through these articles tongue emoticon :
http://c-faq.com/stdio/gets_flush2.html
http://www.go4expert.com/…/solution-using-scanf-fgets-c-t2…/
http://www.geeksforgeeks.org/problem-with-scanf-when-there…/

6). Few of u guys faced a problem with site like getting different outputs for fixed test cases vs.
custom test case even though both are same. it is due to one the above mentioned reasons \r vs.
\r\n

7). Pls don't use gets() to get a line as input, this function was deprecated and most of the latest
compilers mayn't support this function. Instead pls use fgets().
link to article:
http://www.geeksforgeeks.org/gets-is-risky-to-use/
https://www.quora.com/What-is-difference-between-fgets-and-…
http://stackoverflow.com/questio…/…/c-scanf-vs-gets-vs-fgets
http://stackoverflow.com/…/difference-between-fgets-and-gets

8). Last but, the most important one - u guys trying the same problem for hours, trying to make it
correct. instead just go through other questions, u may have some easy question down the paper.
first solve it and then try the rest.
SO, first read all the given problems thoroughly and then choose the best and easiest one among
them and start coding.

cout<<"Happy coding smile emoticon"<<endl;


cout<<"All the best for ur final CPC exams, and practice a lot"<<endl;

P.S - Kindly Excuse any grammatical errors tongue emoticon

For queries ping venkee at 9786166075

ALL THE BEST 

You might also like