This project is a collection of code samples and wiki articles on basic data structures and algorithms that are created using Kotlin. This project is useful if you are trying to get more fluency in Kotlin or need a refresher to do interview prep for software engineering roles.
- I strongly recommend reading my tutorials on developerlife.com that are based on the code that's provided in this repo. These tutorials are a great companion to the source code in this repo and will help you understand the code and the algorithms.
- Once you’ve cloned the repo, type
./gradlew run
in order to build and run this project from the command line. - This project uses the
classgraph
API to load all the classes in thealgorithms
package. You can read more about it here.
The Internet Engineering Task Force (IETF) points out that "Master-slave is an oppressive metaphor that will and should never become fully detached from history" as well as "In addition to being inappropriate and arcane, the master-slave metaphor is both technically and historically inaccurate." There's lots of more accurate options depending on context and it costs me nothing to change my vocabulary, especially if it is one less little speed bump to getting a new person excited about tech.
You might say, "I'm all for not using master in master-slave technical relationships, but this is clearly an instance of master-copy, not master-slave" but that may not be the case. Turns out the original usage of master in Git very likely came from another version control system (BitKeeper) that explicitly had a notion of slave branches.