Quicksort

The Quicksort algorithm was created by Tony Hoare in 1961 and it is a very powerful algorithm to sort an array in memory until today. Here, I will describe the Quicksort algorithm, show an implementation in Python, and analyze the time complexity of this algorithm in the worst and best scenarios. The idea behind the Quicksort is so simple: to sort an array \(V\) of \(n\) elements, it is easier to sort smaller sub-arrays of \(V\). [Read More]

Designing Data-Intensive Applications: Review

Disclaimer: Don’t read this review, go ahead and read the book, it will be much better for you. The only reason that I wrote this is for my future reference. First of all, I love to read books and I do not believe that a review should influence someone to read or not a book. However, as a researcher, one of the most important things that I learned during my years at the university was the importance to write a review of papers. [Read More]

Chrome with selenium, python and docker

Sometimes, when I execute the Chrome inside a docker container I receive the error below: selenium.common.exceptions.WebDriverException: Message: unknown error: Chrome failed to start: crashed It is caused because Chrome uses the /dev/shm to share memory and the docker, by default, set 64MB for this partition. Here, I will describe how to reproduce this error and how to resolve it. How to reproduce To reproduce this error, we need to create a docker image with chrome and python. [Read More]

Identifying Paragraphs

I’m learning computer vision and I’m using the Opencv and Python to write algorithms in this field of computer science. This field is very interesting because it involves computer science and math and also, it is necessary to have good ideas to solve problems. Here, I will show my first algorithm in computer vision. It is to identifies paragraphs in a text image. It consider that the image have a white background and that the characters have a black color. [Read More]