All Projects → igorwojda → Kotlin Coding Challenges

igorwojda / Kotlin Coding Challenges

Licence: mit
🧩 Kotlin coding puzzle and solutions

Programming Languages

kotlin
9241 projects

Projects that are alternatives of or similar to Kotlin Coding Challenges

Codility lessons
Codility Lesson1~Lesson17 100% solutions with Python3 除正確解答外comment裡有解題的思考過程
Stars: ✭ 87 (-76.42%)
Mutual labels:  coding-interviews, coding-challenge
Codinginterviews
This repository contains coding interviews that I have encountered in company interviews
Stars: ✭ 2,881 (+680.76%)
Mutual labels:  coding-interviews, coding-challenge
Cs Fundamentals
🎓 Data structures and algorithms
Stars: ✭ 869 (+135.5%)
Mutual labels:  coding-interviews, coding-challenge
Coding Exercises
My implementation of useful data structures, algorithms, as well as my solutions to programming puzzles.
Stars: ✭ 329 (-10.84%)
Mutual labels:  coding-interviews, coding-challenge
PrepBytes-questions
One can follow to excel in coding if you are a noob!!
Stars: ✭ 46 (-87.53%)
Mutual labels:  coding-interviews, coding-challenge
Interviews
Everything you need to know to get the job.
Stars: ✭ 54,875 (+14771.27%)
Mutual labels:  coding-interviews, coding-challenge
Technical Interview Guide
My learning material for technical interviews!
Stars: ✭ 76 (-79.4%)
Mutual labels:  coding-interviews, coding-challenge
challenge-alpha
Mobile code challenge
Stars: ✭ 13 (-96.48%)
Mutual labels:  coding-interviews, coding-challenge
Coding-Interview-Challenges
This is a repo where I upload code for important interview questions written in Python, C++, and Swift
Stars: ✭ 13 (-96.48%)
Mutual labels:  coding-interviews, coding-challenge
123 Essential Javascript Interview Questions
JavaScript interview Questions
Stars: ✭ 3,634 (+884.82%)
Mutual labels:  coding-interviews, coding-challenge
from-software-developer-to-engineer
My journey from a software developer to a software engineer.
Stars: ✭ 17 (-95.39%)
Mutual labels:  coding-interviews
coding challenge-27
Sudoku Goku
Stars: ✭ 23 (-93.77%)
Mutual labels:  coding-challenge
coding-interview-guide
A systematic coding interview guide
Stars: ✭ 76 (-79.4%)
Mutual labels:  coding-interviews
Daily Coding Problem
Solutions for Daily Coding Problem.
Stars: ✭ 300 (-18.7%)
Mutual labels:  coding-interviews
websight
🕷A simple but *really* fast crawler built with Node.js & TypeScript
Stars: ✭ 15 (-95.93%)
Mutual labels:  coding-challenge
js-data-structures-and-algorithms
JavaScript implementations of common data structure and algorithm concepts.
Stars: ✭ 31 (-91.6%)
Mutual labels:  coding-interviews
coding challenge-35
Building Social Proof
Stars: ✭ 17 (-95.39%)
Mutual labels:  coding-challenge
nerdojo
🥋 Coding Dojo é uma forma de treinar suas habilidades em desenvolvimento de sistemas. Usamos o formato KATA. Nesse formato vamos apresentar o desafio e apresentar a proposta de solução (sem mostrar o código), e reunir as pessoas em equipes. Esse repositório serve como uma central de tudo o que acontece no NCD. Fique por dentro!
Stars: ✭ 36 (-90.24%)
Mutual labels:  coding-challenge
100DaysOfCode
#100DaysofCode
Stars: ✭ 31 (-91.6%)
Mutual labels:  coding-challenge
coding challenge-39
Spinnin' Round
Stars: ✭ 15 (-95.93%)
Mutual labels:  coding-challenge

Kotlin coding challenges

This repository contains a set of programming challenges that are solved using the Kotlin language (hints, solutions tests and useful links are here as well). The purpose of this repository is to help you to practice coding and develop strong problem-solving skills. This will help you to become a better programmer and improve your chance of getting a new job by passing whiteboard coding interviews.

Challenge structure

Each challenge is located in separate package and it contains 3 main files (screen):

  • desc.md - the task description.
  • desc.kt - an empty method/class where challenge should be solved. This file also contains set of test and ocasionally helper methods. JUnit tests which verify that task was solved correctly.
  • solution.kt - a file containing one or more solutions.

Keep in mind that each challenge will usually have more than one solution. Even simple challenges like String reversal can be solved in 10 different ways. Usually, we compare various solutions using (Big O notation) to determine space/time complexity and we look at code readability.

How do I start?

  1. Install IntelliJ IDEA
  2. Import project by using IntelliJ IDEA menu: File | New | Project From Version Control | Git
  3. Choose a challenge and code the solution
  4. Run the tests to verify your solution

Let's solve some challenges

Challenges below are segregated by different difficulties. The repository also contains challenges grouped by problem type.

Some challenges may contain a reference to other challenges that should be solved before to have a better understanding of the problem. To succeed you need to practice often, repeat the same challenges multiple times and be persistent over time. Take your time before you take a look at the presented solution. Good luck!

New in Town

Apprentice

Warrior

Commander

Useful links

More coding challenges

Challanges

  • GeeksForGeeks - large and nicely segregated set of problems.
  • HackerRank - large set of problems and additional interview problems for business.
  • TopCoder - platforms for competitive programming online.
  • Project Euler - more complex challenges, usually related to mathematics. The site already contains 600+ problems and a new code challenge is available very week or two. You will probably have to discuss the problem with the community because solutions are not on the website.
  • Advent of code - one month of various programing problems released daily at the end of the year. Fortunately archive of past events is still there.
  • CoderByte - 200+ challenges, data structures / algorithms / company interview problems segregated by difficulty. Unfortunately most of them are only available for premium users. Premium gives you access to premium step-by-step solutions and user solutions.
  • CodeChef - contains set of programming problems segregated by difficulty.
  • LeetCode - data structures / algorithms / company interview problems segregated by difficulty.
  • Code Forces - list of programming challenges is smaller than other websites, but you will still have plenty of problems to solve.
  • Spoj - list of programming challenges is smaller than other websites, but you will still have plenty of problems to solve.
  • Exercism - coding challenge website that offers 3100+ challenges spanning 52 different programming languages.

Game challanges

  • CodeWars - solve visuial challanges by writing code for the.
  • CodinGame - solve visuial challanges by writing code for the.

Video courses

Books

Websites

  • Hiring without whiteboards - listing of companies (or teams) that don't do "whiteboard" interviews.
  • VisuAlgo - visualizes data structures and algorithms through animations algorithms.
  • Data structures explained - description of various data structures.
  • Sorting algorithms animations - visually compares most popular sorting algorithms using animations.
  • Big-O Reference - summarizes the complexities in terms of space and time (Big-O) of the most important algorithms and operations in common data structures.
  • Big-O poster - time/space complexity poster to print ant put on the wall.
  • Big-O Cheat Sheet - covers the space and time Big-O complexities of common algorithms.

Coding interview repositories

Contribute

Feedback and new contributions are welcome whether it's through bug reports or new PRs. To add new coding puzzle just follow this guide and open PR.

Contributors

Author

Follow me

Follow me

License

MIT License

Copyright (c) 2019 Igor Wojda

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].