0% found this document useful (0 votes)
8 views5 pages

Software Syl Lab Us

The document provides a comprehensive study guide for preparation for placement and internship sessions, covering essential topics in Data Structures, Algorithms, Dynamic Programming, Operating Systems, Networking, DBMS, and OOP concepts. It includes recommended resources, websites, and books for each topic, as well as tips for interview preparation and project experience. The guide emphasizes the importance of mastering data structures and algorithms, as they are crucial for coding rounds in interviews.

Uploaded by

ritikvermassv
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
8 views5 pages

Software Syl Lab Us

The document provides a comprehensive study guide for preparation for placement and internship sessions, covering essential topics in Data Structures, Algorithms, Dynamic Programming, Operating Systems, Networking, DBMS, and OOP concepts. It includes recommended resources, websites, and books for each topic, as well as tips for interview preparation and project experience. The guide emphasizes the importance of mastering data structures and algorithms, as they are crucial for coding rounds in interviews.

Uploaded by

ritikvermassv
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as DOCX, PDF, TXT or read online on Scribd

Hello Everyone,

Here is the study material (Software) that you can follow to prepare for the upcoming placement/intern
session. Manage your time well and try to get the most out of it.

Data Structure and Algorithms -

Topics:

 Array, Linked List, Doubly Linked List, Strings, STL and how they are
implemented internally, Stack, Queue.
 STL Containers - Vectors, Map , Set , Unordered_Map.
 Hash and Hash Table
 Heap
 Tree
1. Binary tree
2. BST
3. BFS vs DFS of Binary Tree
4. Traversals :- Inorder , Preorder , Postorder , Level Order
5. Construct tree if two traversal are given
6. Find distance between two nodes of binary tree.
7. Check if tree is height balanced or not.
8. Diameter of a binary tree
9. Print all the nodes at distance K from a given node.
10. Construct BST for a given preorder/postorder traversal.
11. Sorted array to balanced BST
12. Minimum depth of a binary tree.
13. Maximum path sum in a binary tree
14. Print a tree in zigzag order.
15. Finding Lowest Common Ancestor in a BST

- Graph
1. BFS & DFS ( Vector implementation )
2. Check if a given graph is tree or not.
3. No of connected components
4. Detect Cycle in a graph
5. Shortest path between two vertices, Dijkstra(Using multiset or priority Queue)
6. Shortest Path Algorithms :- Dijkstra , Bellman Ford , Floyd Warshall , Johnson Algorithm .
7. Topological Sorting
8. Minimum Spanning Tree (MST) - by Prim's and Kruskal

- Dynamic Programming
1. Longest Common Subsequence (LCS) Yes
2. Longest Increasing Subsequence (LIS)
3. Coin Change Yes
4. Longest/Shortest path in a matrix.

5
5. Subset sum problem. Yes
6. Knapsack problem. ( Important ) Yes
7. Rod cutting Yes

- String Searching
1. KMP Algorithm
2. Z Algorithm
3. String hashing

- Miscellaneous
1. Space and Time Complexity
2. [Link]
3. Sieve of Eratosthenes
4. Merge Sort , Quick Sort (Important)
5. Binary Search ( Important for coding round)
6. Two Pointer Concept
7. [Link]
railwaybus-station/
8. [Link]
9. System Design from [Link] (Important for some companies)

Websites and Links:


1. [Link] ( Try to cover all important data structures )
2. [Link] ( Very Important )
3. [Link] ( For better understanding of algorithm )
4. [Link]
with-the-standard-template-library-part-1/ ( Both Part 1 and Part 2 )

Source:-
1) [Link]

6
C-
1. Control statements, functions and pointers
2. Memory Management
3. [Link]
4. Geeks quiz . ( For output question )

OOPs- ( Note :- Any OOPS language ( Java / C++ / Python etc ) and OOPS Concepts )
1. Abstraction, Encapsulation, Polymorphism and Inheritance.
2. Objects, Constructor, Destructor, References
3. Initializer List
4. Virtual Functions, Virtual Table and Virtual Pointer
5. Exception Handling
6. 'this' Pointer
7. static, volatile, friend, const Keywords

Books and Links:


1. Thinking in C++, Bruce Eckel - Vol I, Java the complete Reference
2. Refer Geeks
Operating System -
1. Process Management -
● Scheduling Algorithms - Preemptive, Non- Preemptive, SJF, FCFS, Round Robin
● Deadlock prevention, avoidance, detection and recovery
● User level threads and kernel level threads
● Concurrency control, Mutual Exclusion and Synchronization
● Mutex, semaphores and monitors ( Important )
● Context switching
● Implementation of Threads
● Producer - Consumer Problem, Readers-Writers Problem, Dining Philosophers Problem
2. Memory Management - ( Important )
● Paging, Segmentation, Fragmentation
● Cache memory
● Virtual Memory
● Page faults, swapping, Thrashing
● LRU and implementation
3. File Management -
● File organization and access
● Index pointers
● Hard links, Soft links
Books and Material -
1. Operating Systems, William Stallings
2. Operating System Concepts, Peter Baer Galvin
3. Nptel Lectures by P.K Biswas
4. [Link]
5. [Link]

6
Networking -
1. Fundamentals of OSI protocol stack and TCP/IP stack
2. Network Layer & Transport Layer in detail
3. Basic Networking Devices
([Link]
4. Subnetting problems
5. DHCP, ARP(in detail)
6. MAC Addresses ,CSMA/CD
7. IPv4 vs IPv6
8. Forwarding and Routing Algorithms.
9. TCP, UDP differences and use-cases.
10. Domain Name Server (DNS)
11. Network Cache & Web Cookies.
12. Traceroute, ICMP, ping
13. IEEE 802.11 & 802.3 (detailed working).
14. Circuit Switching & Packet Switching.
15. Mail server (SMTP,POP3,IMAP).
16. Socket Programming in C

Tip- Learning to create a chat server in C will be highly beneficial !


Books and Material:
1. Computer Networking, Kurose and Ross
2. Stanford Networking Lectures
3. Google!

Aptitude and Reasoning -


1. Practice of basic Maths
2. Aptitude section on geeks
3. [Link]
4. [Link]

DBMS

1. Data Abstraction and Data Independence !!


2. ER Model !!
3. Keys in Relational Model (Candidate, Super, Primary, Alternate and Foreign)
4. Normal Forms
5. Lossless Join Decomposition
6. Transactions and Concurrency Control
7. ACID Properties
8. Conflict Serializability
9. View Serializability
10. Recoverability of Schedules
11. Indexing ,B,B+ trees basics
12. Practice of writing queries [Link]
Source
1. [Link]
v=wez3fXrjBAE&list=PLmXKhU9FNesR1rSES7oLdJaNFgmuj0SYV (This is sufficent
for basic DBMS)

6
2. [Link]
3.‘Database Management Systems’ by Raghu Ramakrishnan

Read different interview experiences on [Link] as well


as on TPO Placement Portal . Interview Experiences will help you a [Link] should have at least one good
project in any of the topics mentioned in areas of interest (Android development, Machine
Learning,Software Development,Web Development etc).

Note:- Beginners should try to have a firm grasp on DS and [Link] first round of most
companies is coding round( 2 coding questions and few mcqs) .You can practice companies based questions
on interviewbit or leetcode.

Here is the drive link for the material -


[Link]
usp=sharing

Start Preparing and Brace Yourself !!

You might also like