Here you'll find implementations of most popular algorithms and data structures in C++, with detailed explanations of how they actually work. The repository contains variety of problems, from easy to hard ones, hence everybody should find something. The repository is originally created for the purpose of teaching students at University Sarajevo School of Science and Technology for Data Structures class, however any contributes from outside the class are more than welcome. The repository is currently maintained by professors, assistants and students of the University.
LeetCode is a social platform for preparing IT technical interviews. On Leetcode you will find variety of different programming challenges from various topics, which if you solve them, will prepare you for interviews in big IT companies. You can filter by data structure, complexity and even company. For example, you can get a list of 20 most common programming questions asked at Google, Microsoft, Facebook or LinkedIn.
We organized this repository into groups according to tags from Leedcode. Each problem is stored in a separate .cpp file and each file has a description of the problem and comments(a lot of comments). The goal is to help people understand how particular algorithm works. In addition, each .cpp file will have a URL to the Leetcode, so you can test the code.
Aim is to make the best possible code. If you see a mistake or think you can make the algorithm run faster or provide a better explanation, feel free to do so. If the problem is not listed below, it means we haven't solved it yet, and in that case feel free to open a pull request. Just make sure you follow the simple rules described above.
This section provides a list of all currently solved problems. You can expect to see updates on weekly basis.