Genral Instructions
Genral Instructions
Mathematics:
(a)Number Theory
1. Pigeonhole principle
2. Inclusion Exclusion
3. Special Numbers [Stirling,Fibonacci,Catalan, Eulerian, Harmonic, Bernoulli]
4. Polya Counting
5. Burnside lemma
(d)Permutation Cycles
(e)Linear Algebra
(a)Graph Representation
1. Adjacency Matrix
2. Adjacency List
3. Incidence Matrix
4. Edge List
(b)Graph Types
1. Directed
2. Undirected
3. Weighted
4. Unweighted
5. Planar
6. Hamilton
7. Euler
8. Special Graphs
(c)DFS & It’s Application
1. Cycle Detection
2. Articulation Points
3. Bridges
4. Strongly Connected Component
5. Connected Component
6. Path Finding
7. Solving Maze
8. Biconnectivity in Graph
9. Topological Sorting
10. Bipartite Checking
11. Planarity Testing
12. Flood-fill algorithm
(d)BFS & It’s Application
1. Prim’s Algorithm
2. Kruskal Algorithm
(d)Single Source Shortest-Path
1. Dijkstra
2. Bellman Ford
(e)All pair Shortest Path
(g)Flow
1. Ford-Fulkerson [PFS,DFS,BFS]
2. Dinic's Algorithm
3. Min Cost - Max Flow [Successive Shortest Path Algo,Cycle Cancelling
Algorithm]
4. Max Weighted BPM [Kuhn Munkres algorithm/Hungarian Method]
5. Stoer Wagner Min-Cut Algo
6. Hop-Kraft BPM
7. Edmond Blossom Shrinking Algorithm
(h)Other Important Topics On Graphs
1. 2-SAT,
2. LCA
3. Maximum Cardinality Matching
4. Application Flow
5. Min Path Cover Over Dag
6. Independent Edge Disjoint Path
7. Minimum Vertex Cover
8. Maximum Independent Set
Data Structures:
1. Arrays
2. Linked List
3. Trees (Binary Tree And Binary Search Tree)
4. Stacks
5. Queues
6. Heap
7. Hash Tables
8. Disjoint-Set Data Structures
9. Trie
10. Segment Tree
11. Binary Index Tree
12. Treap
Searching And Sorting:
1. Linear Search
2. BInary Search
3. Ternary Search
4. Selection Sort
5. Bubble Sort
6. Insertion Sort
7. Merge Sort
8. Quick Sort
9. Quick Select
10. Heap Sort
11. Radix Sort
12. Counting Sort
Greedy:
Classical Problems of Greedy & Concept
example : Fractional Knapsack
1. Edit Distance
2. Egg Dropping Puzzle
3. Integer Knapsack
4. Largest Independent Set
5. Longest Biotonic Subsequence
6. Longest Common Subsequence
7. Longest Common Substring
8. Longest Increasing Subsequence
9. Longest Palindromic Subsequence
10. Longest Palindromic Substring
11. Longest Substring Without Repeating Character
12. Matrix Chain Multiplication
13. Max Size Square Submatrix With One
14. Maximum Length Chain Pairs
15. Maximum Sum Increasing Subsequence
16. Optimal Binary Search Tree
17. Palindrome Partition Problem
18. Set Partition Problem
19. Subset Sum
20. Word Wrap Problem
Dynamic Programming Advanced Techniques
1. DP + Tree
2. DP + Bit Masking
3. DP + Binary Search
4. DP + Graph
5. DP + Matrix Exponentiation
6. DP + Probability Space
7. DP + Crack Recurrence
Divide & Conquer
Classical Problems & Concepts
1. Merge Sort
2. Closest Pair Points
Other Algorithm Design Techniques :
1. BackTracking
2. Man In Middle
3. Newton-Raphson to reach the fixed point
4. Brute Force
5. Constructive Algo
6. Sliding Window
7. Pancake Sorting
C- Programming
C Overview
Data Types
Operators and Expressions
Formatting Input/Output
Decision Making
Logic Building
Arrays and Pointers
Character Arrays and Strings
Functions
Recursion
Structures and Unions
Sorting
Searching
File Handling
C++
C++ Overview
Data Types
Loops
Operators and Expressions
Formatting Input/Output
Decision Making
Logic Building
Pointers
Arrays
Character Arrays and Strings
Functions
Recursion
Structures
Object Oriented Concepts inC++
Inheritance
Abstract Classes
Virtual Function
Standard TemplateLibrary(STLs)
File Handling
Python Overview
Logic building
Loops and conditional statements
Data Structures in Python
Operators and Expressions
Input/Output
Arrays
Strings
Functions and OOPs
Recursion
Time complexity
Searching
Sorting
Aptitude
Number system &Divisibility
HCF & LCM
Series & Progression
Time, Speed & Distance
Time & Work
Percentages
Permutation &Combination
Profit & Loss
Probablity
Geometry
Mixtures & Allegations
Logarithms
Sentence Completion
Reading Comprehension
Para jumbles
Synonyms
Antonyms
Data Sufficiency
Deductive Logic
Number series
Analogy
Cryptarithmetic
Web development
Introduction to DBMS
Relational Model
SQL
OPERATING SYSTEM
Process Concepts
Threads
Process Scheduling
Process Synchronization
Deadlocks
Memory Management
Machine learning
That was about internships. Besides the internship, you should
try taking up some miscellaneous courses like:
Machine Learning — Machine Learning — Stanford
University | Coursera
Intro to Machine Learning Course | Udacity
Cryptography — Applied Cryptography and
Encryption Class Online | Udacity
A website called caggle(dataset) project.
These courses should help you put 2 more projects on your
resume and also expand your CS knowledge. No doubt they will
also open up more internship domains for you:
Data/ML engineer intern
Security engineer intern