Greedy Algorithm
Greedy Algorithm is the method that chooses the best way to solve a problem at every moment. It does not consider future results or calculations, but just consider the best choice to conquer a problem at every each moment. For example, given any number to you, to get the lowest number of attempts to turn the number into 0 by dividing by 10 or subtracting by 1, you are supposed to divide the number as many as you can. In other words, the fastest way to get 0 at the end is to divide any number multiple times continuously.
100 -> 10 -> 1 -> 0
# the best way to make 100 into 0.
Greedy algorithm gives us an idea that repeating or solving a problem by separating it into subproblems might be helpful to solve an entire problem. However, of course, it is impossible to solve every problem with greedy algorithm only. Dynamic programming can be a broadly-used tool to solve many algorithm problems in this case.
Spring Boot
Spring Boot is a JVM-based framework for fast-building a communicating application – server. It provides very powerful plugins, libraries, modules for security, logging, authorizing, or distributing. It is one of the most widely-used JVM-based server framework – especially in South Korea – in the world. I am learning how to code, manage, distribute, and test the framework to improve my backend tech stack.