Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/andream16/algorithms

Algorithms & Data Structures. Problems and solutions for Leetcode.com and Google Foobar Challenge.
https://github.com/andream16/algorithms

algorithms data-structures golang google-foobar java leetcode python

Last synced: 28 days ago
JSON representation

Algorithms & Data Structures. Problems and solutions for Leetcode.com and Google Foobar Challenge.

Awesome Lists containing this project

README

        

# algorithms
Algorithms & Data Structures. Problems and solutions for [Leetcode.com](https://leetcode.com/) and [Google Foobar Challenge](https://foobar.withgoogle.com/).

## context

### motivation
I'm sharing this repository to help other engineers preparing for algorithms and data structures interviews.

### why leetcode
[Leetcode.com](https://leetcode.com/) is an amazing platform to prepare for such interviews. Its community is vibrant and the questions are relevant.

### foobar
I've got an invitation from a friend of mine to take on this challenge. No, I don't have invites left!

## how to navitage this repository

Navigating this repository is pretty straightforward. The problems are organised in topics. In each topic you'll find a range of problems.

For each problem you'll usually find:
- `README.md`: contains the problem description, its source, companies that asked that question and other tags such as `Top 100 Questions`.
- `file.go`: contains the solution for such problem. Sometimes each solution contains some explanation on how the problem was solved and space/time complexity of the solution
- `file_test.go`: contains the tests related to the problem

## disclaimer

- These solutions are opinionated and the result of my knowledge.
- Some space/time complexity analysis might be wrong.
- Some solutions might not be completed.
- Some solutions might not be the most efficient ones.

## contributing

You are more than welcome to contribute by adding new problems or fixing existing ones.