## In Real World

The most important skill for a computer science student and future **software engineer** is **Data structures and algorithms.**Name any Big information technology giant, the one thing in common between all of them in job interviews is Data structures and algorithms.

Whenever a newbie starts learning Data structures and algorithms they find it difficult to understand the concepts which then demotivates them to stop learning it.One common question in all of them is **How do I start learning or strengthen my knowledge of data structures and algorithms?** Most of the time they don't follow the correct way to learn DS & Algo.So,in this article I will try to help you learn DS & Algo in the easiest way.

START WITH THE BASICS

- Pick any
**programming language**of your choice & remember, stick to your preferred language throughout the Ds & Algo learning phase. - Start learning the basic syntax of the language and practice problems related to-if else,loops,arrays,etc
- Once you are comfortable with syntax move on to the next process.

## START LEARNING BASIC DATA STRUCTURES

#### Learn Data structures topic wise,topics are provided below

**Array****Linked List****String****Stack Queue****Heap****Hashing,Hash Table (Set)****Map****Binary Tree****Binary Search Tree****Graph**

**START LEARNING ALGORITHMS**

**Searching Algorithms****Sorting Algorithms****Greedy Algorithms****Recursion****Backtracking****Dynamic Programming****Graph Algorithms Like (BFS,DFS)****Bit Manipulations**

#### Solve at least 5 problems of each algorithms of different types

**NOTE:****Some
problems of Data Structures requires specific algorithm.So leave those
problems for the time being.For example - In array Data structure Stock
Selling problems requires knowledge of Dynamic Programming .So, while
learning Data structures its perfectly fine to solve problems using
Brute force and naive approach.**

After following the above process start solving problems from **Geeksforgeeks** and** Leetcode **any try to solve problems in both Naive and Optimized approach.Solving 250+ questions will help clearing concepts easily & don't forget to read interview experience of companies and the asked problems in interview.

There are various excellent online courses available on the internet.Those course covers all the mentioned above topics as well as advanced topics,you can always refer to them as well.

By doing the above steps will help you in your coding interviews.Also doing **Competitive programming ** will help you gain speed in solving problems but its not at all necessary.Competitive programming will help you get **Referral for jobs** but not much in interview because coding test doesn't asks competitive programming related questions.

### Congrats Now you are ready for your Interviews

Feel free to comment is you have any doubt or questions in comments section

For more Data structure and algorithms,computer science,programming,coding related problems search my website

## 0 Comments

Have any doubt ? contact us