Skip to content

CatP98/Algorithms

Repository files navigation

Algorithms

Algorithms for Tech Interviews and the Stock Exchange

This repository contains JavaScript implementations for a variety of algorithms, including solutions to common coding interview problems and stock exchange analysis.

Languages

  • JavaScript: The primary programming language used to implement the algorithms.
  • Pseudocode: Used to plan the algorithmic logic before coding the solutions.

Tools

  • Vim: The text editor used for writing and editing code.
  • Git: Version control tool used for tracking changes and managing the repository.
  • GitHub: Hosting platform for the assignment repository.

Resources

  • MDN Web Docs: Referenced for JavaScript syntax, methods, and best practices.

Files

Interview Problem Solutions

  • fromFacebook.js: Solutions to Facebook interview problems.
  • fromFacebook2.js: Additional solutions to Facebook interview problems.
  • fromAmazon.js: Solutions to Amazon interview problems.
  • fromGoogle.js: Solutions to Google interview problems.
  • interviewAlgorithms.js: Collection of various algorithms used in coding interviews.

Stock Exchange Analysis

  • stockExchange__.js: Main implementation for analyzing stock prices to determine the best days to buy and sell for maximum profit.
  • stockExchangeOptional__.js: Optional or additional implementation related to stock exchange problems (may contain variations or improvements).

Testing

  • tests.js: Contains test cases for validating the correctness and performance of the algorithms and implementations.

Tech Skills

This project demonstrates the following technical skills:

  • JavaScript Programming: Proficiency in JavaScript, including ES6+ syntax, functions, arrays, and object manipulation.
  • Algorithm Design and Analysis: Implementation of various sorting, searching, and optimization algorithms.
  • Data Structures: Knowledge of common data structures such as arrays, stacks, and maps.
  • Problem Solving: Experience with solving algorithmic problems commonly encountered in technical interviews.
  • Performance Optimization: Skills in optimizing algorithms for better performance and efficiency.
  • Testing and Debugging: Experience with manual testing and debugging of algorithms to ensure correctness.
  • Version Control: Proficiency in using Git for version control and collaboration.

Usage

  1. Clone the repository:
    git clone <repository-url>

About

Algorithms for Tech Interviews and the Stock Exchange

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published