c2c2017
c2c2017 copied to clipboard
Course material and references for Campus To Corporate course, 2017.
trafficstars
c2c2017
Course material and references for Campus To Corporate course, 2017.

Introduction
This repo contains notes, assignments, Java source code and other course material for a interview prep course held at K.J. Somaiya College of Engineering in 2017. It is made available under a permissive MIT License, so that it may benefit other students.
If you like this repo or use it for your own interview prep, please leave it a :star: :)
Resources
- Space-Time Complexity Cheatsheet
- Interactive Data Structure and Algorithm Visualizations
- A Comparative Visualization of Sorting Algorithms
- Another Visualization of Various Algorithms
- CS50 - The Quintessential Harvard Course
- Google - Coding Interview Example
- Google - Preparing for a Technical Interview
Other Interesting GitHub Repos
- https://github.com/sdmg15/Best-websites-a-programmer-should-visit (Especially the "Interview Preparation" and "General Coding advice" sections)
- https://github.com/kdn251/interviews
- https://github.com/alex/what-happens-when
- https://github.com/jwasham/coding-interview-university
Some Geeky Fun
- Ineffective Sorts
- Some More Sorts
- Floating Point Woes
- Trees and Heaps
- Little Bobby Tables
- Python Rocks
- Don't Use Gotos
- Real Life Applications of Subset Sum
- Peer Reviews
- Parent-Child Bonding
Motivation
Index
Session 1
- Session 1
- Intro to Java
- What is Java
- Flavors of Java
- Compilation of a Java file
- Naming Conventions
- Hello, World
- Primitive Data Types
- Some Real Coding
- Conditionals
- Conditionals practice
- Loops
- Loop practice
- Assignments
- HackerRank
- Miscellaneous
- Intro to Java
Session 2
- Session 2
- Revision
- Arrays
- Declaration, Intialization and Use
- Iteration
- Array Practice
- Functions
- Basic Syntax
- Recursion
- Memoization
- VarArgs
- 2D Arrays
- Assignments
- HackerRank
- Miscellaneous
- Test
Session 3
- Session 3
- Function Overloading
- Classes
- Constructors
- Instance Variables
- Instance Methods
- Static Methods and Instances
- Practice
- The final modifier
- The String class
- Assignments
- HackerRank
- Miscellaneous
- Test
Session 4
- Session 4
- Revision
- Initializer Blocks
- Instance Initializer Block
- Static Initializer Block
- Call Stack
- Object Heap
- Some Traps and Pitfalls
- Recursion And Memoization Practice
- BufferedReader - The Faster Way Of Accepting Input
- Sorting - A High Level Perspective
- Assignments
- HackerRank
- Miscellaneous
- Test
Session 5
- Session 5
- Call By Value / Call By Copy Of Reference
- The
thiskeyword - Inheritance
- Inheritance Models
- Access Modifiers
- The
extendskeyword - The Point Example
- Overriding
- Abstract Data Structures - an Overview
- Assignments
- HackerRank
- Miscellaneous
- Test
Session 6
- Session 6
- RapidFire Revision
- The
finalmodifier (again) - The
thiskeyword (again) - The
superkeyword (again) - Abstract Classes
- Interfaces
- Dynamic Method Dispatch
- Order of Instance Variable Initialization
- Assignments
- HackerRank
- Miscellaneous
Session 7
- Session 7
- Linked Lists
- Sorting
- Assignments
- HackerRank
- Miscellaneous
Session 8
- Session 8
- The Collections Framework - Part I
- The Collection Hierarchy
- Lists, Queues and Sets
- Problems
- Trees
- Binary Trees
- Binary Search Trees
- Assignments
- HackerRank
- Miscellaneous
- The Collections Framework - Part I
Session 9
- Session 9
- The Object Class,
equalsandhashCode - The Collections Framework - Part II
- Maps!
- Problems
- Graphs
- Applications
- Classification
- Representation
- Terminology
- Traversals and Algorithms
- Problems
- An Extensive List of Graph Topics
- Assignments
- HackerRank
- Miscellaneous
- The Object Class,
Session 10
- Session 10
- Exception Handling
- The Exception Hierarchy
- Checked and Unchecked Exceptions
throwandthrows- try-catch-finally
- Variants of try-catch-finally
- Call Stack propagation
- Some "Exceptional" Cases
- Garbage Collection
- The Garbage Collector
- The
finalizemethod
- Assignments
- HackerRank
- Miscellaneous
- Exception Handling
Session 11
- Session 11
- Data Structures and Algorithms
- Heaps
- Self Balancing Trees
- Java
- Enums
- Packages
- Immutable Classes
- Multi-Threading
- Nested Classes
- Data Structures and Algorithms