Guide for Placement Preparation

Ayush Negi
VITHelper
Published in
3 min readMay 10, 2020

There are lot of confusion and misconceptions among Sophomore and Senior college students about the syllabus for placement preparation. They lack resources for placements which leads to tension and stress. If you are among them and want to make your placement preparation right, then this article is for you.

Important subjects that needs to be done for any college placement-

  • Aptitude
  • MCQs based on Programming
  • Competitive programming
  • Algorithms and Data Structures
  • Academics (OS/DBMS/CN)

Here we will focus on two topics-

  • Competitive programming
  • Algorithms and Data Structures

Do checkout our Placements section for other subjects’ resources, placement reviews, and PAT rules and regulations.

1. Competitive programming

The first screening process of most companies is a programming test where you are reviewed based on your ability to write code. Here are a general points followed by most companies-

  • Time constraint- Student must be able to write the code within time limit.
  • Programming Language- Student can choose their coding language. In very few companies they will restrict the coding language. You are required to have a good knowledge of at least one language thoroughly- C++, C, Python or Java.
  • Complexity of code- Code should be optimized and should run within the given time and space.

Preparing tips-

There are many online coding platforms where you can practice competitive coding. Here are a few good ones-

-> If you are a beginner then you should go for sites like HackerRank or GeeksForGeeks. Here, you should try to solve maximum problems in easy and basic level so that you could get a good idea of about coding and it will also help you build confidence.

-> If you are good at programming, you should prepare from sites like Code Chef or Code force. Here, no shortcuts are available and you have to practice a lot by solving different kind of problems and strengthen your concepts.

Work on every concept, and take feedbacks after solving each problem seriously.

2. Algorithms and Data Structures

Data Structures and Algorithms are the back bone to all programming languages and hence you should have a good knowledge on these two topics, these are the most important topics one should prepare for any company interview.

DATA STRUCTURES

A data structure is a data organization, management, and storage format that enables efficient access and modification.

You should start by learning a programming language suited for algorithms/data structures. You can learn python/Java/C++/ C as per your choice.

Some important data structures are–

1. String/Array

2. Linked lists

  • Single Linked lists
  • Double Linked lists
  • Circular Linked lists

3. Stack

4. Queues

5. Trees

To learn about these data structures you can refer online material or textbooks. Some recommended sources from us are-

  • My code school (YouTube).
  • MIT lectures playlist on data structure and algorithms (You Tube).
  • Courses available on online learning sites like Coursera , Udacity etc.

ALGORITHMS

Algorithms are basically used for improving time complexity and space used, they also help to run your code in more efficient way.

Important topics for algorithms are-

  • Searching- Linear and Binary (ordered, unordered)
  • Sorting- Bubble, Selection, Merge, Insertion, Quick
  • Time and Space complexity- Big O Notation
  • Recursion, Backtracking
  • Dynamic Programming
  • Greedy Algorithm

But, the most important thing is that you should try to implement the Algorithm or data structure after understanding its concept. The best way to polish your implementation skills is to do competitive programming problems.

Practice and participate in different challenges and submit your code here-

Other recommended sources for having a better understanding of algorithms are-

  • Algorithms lectures by Abdul Bari (You Tube)
  • MIT course playlist on algorithms (You Tube)
  • Data structures and algorithms made easy by Narasimha Karumanchi.

To Summarize

Overall important DSA topics are-

  • Stacks, Queues, Linked Lists
  • Tree- Traversals, Binary Tree, all related algorithms
  • Graph- Traversals, algorithms
  • Sorting- Bubble, Selection, Merge, Insertion, Quick
  • Searching- Linear, Binary (ordered, unordered)
  • Time and space complexity- Big O Notation
  • Recursion, Backtracking
  • Dynamic programming

So, I’ll wrap it up with a saying that there’s nothing worse than leaving a job half-done.

Good luck and happy coding!

Originally Published at VITHelper

--

--