/algorithms-in-java

This project is about having having algorithmic puzzles captured and recorded from multiple resources.

Primary LanguageJava

Playground for Algorithms


Hackerrank Report

Practise, Practise, Practise

How to succeed ?

  • It's OK to question your interviewer!
  • When asked to provide a solution, first define and frame the problem as you see it.
  • If you don't understand the question, ask for help or clarification.
  • If you need to assume something, verbally check it's a correct assumption.
  • Describe how you want to tackle solving each part of the question.
  • Always let your interviewer know what you are thinking. He or she will be as interested in your thought process as your solution. If you're stuck, let your interviewer know. They may help clarify the problem to get you back on the right track.
  • Finally, listen to your interviewer; don't miss a clarification if your interviewer is trying to assist you.

What are interviewers looking for ?

  • Interviewers will be looking at your approach to questions as much as the answer:
  • Are you listening carefully and comprehending the question?
  • Are you asking the correct questions before proceeding? (important!)
  • Is brute force used to solve a problem? (not good!)
  • Are things assumed without first checking? (not good!)
  • Are hints heard and heeded?
  • Are you taking excess time to comprehend / solve problems? (not good!)
  • Do you enjoy finding multiple solutions before choosing the best one?
  • Are new ideas and methods of tackling a problem sought?
  • Are you inventive and flexible in your solutions and open to new ideas?
  • Can you handle questions that lead to more complex problem solving?

Sample Topics ?

  • Coding: data structures, distill large data sets to single values, transform one data set to another.
  • Algorithm Design / Analysis : big-O analysis, sorting and hashing, handling obscenely large amounts of data.
  • System Design: feature sets, interfaces, class hierarchies, designing a system under certain constraints, simplicity and robustness, tradeoffs.
  • Open-Ended Discussion: biggest challenges faced, best/worst designs seen, performance analysis and optimization, testing, ideas for improving existing products.