Skip to content

Latest commit

 

History

History
901 lines (669 loc) · 91.3 KB

algorithms.md

File metadata and controls

901 lines (669 loc) · 91.3 KB

drawing

content

Technical interviews used to be a challenge for me. I have a bachelor’s degree in Electronics & Telecommunications and a master’s degree in Computer Science.

Returning an array of the non-overlapping intervals that span every input interval.

Linked List in Binary Tree

Well, this is where you are separated by the ones who are good or excellent software developers. In this case, I will tell you that at the beginning or at least in my case and I know that most of the time and for most people who I know, you will feel like an incompetent or an idiot. Basically, how is it possible that I cannot understand this and then you get frustrated.

An easy approach to the hard leetcode problem Merge k Sorted Lists from that many people using Java Algorithms will need to learn in order to be effective.

In this article, you will learn how to code a Binary Tree Right side view in LeetCode.

I created a site where people can vote and submit projects they want me to build. This was fine when there was only a dozen projects, but not when the list grew

Different ways to remove duplicates in slices in Go, a powerful language whose lack of tools makes learning this necessary if you want to make full use of it.

Algorithms are a fundamental part of software and coding. Algorithm is this fun buzzword that makes something sound really complicated and cool. I’d like to point out that an “algorithm” literally is just a way of doing something; it’s just a process. Nonetheless Algorithms and Data-Structures are a core part of software because at the end of the day you are just working with data. Data needs to be organized for it to be meaningful just like the letters on this page. Atwh and whAt have the same letters but the latter has meaning because of the organization.

Minimalistic Data Structure Sketches

Fat Liberation is a social justice movement focused on making social policy and practice more inclusive and equitable for fat people.

OpenAI GPT-3 is the most powerful language model. It has the capacity to generate paragraphs so naturally that they sound like a real human wrote them.

Hello Readers! I’ve launched JavaScript Algorithms and Data Structures repository on GitHub with a collection of classic algorithms and data-structures implemented in ES6 JavaScript with explanations and links to further readings and YouTube videos.

Learn what's adversarial machine learning, how adversarial attacks work, and ways to defend them.

Amazon is the largest retailer in the world, but a majority of the sales on the site come from third-party sellers. Along with toasters and mops, the site’s a target for people trying to sell dangerous and illicit products.

We will learn how to solve "Number of Islands" from Blind 75 LeetCode Questions.

I did a practice interview on Pramp this week. It didn’t go super well — which is frustrating because in retrospect it wasn’t that difficult of a question. Let’s jump in.

Statement

Most of us consider PHP is only for web apps and machine learning can't be done by web developers. Yes with PHP you can do it, even implement deep learning.

Understanding algorithms and data structures are crucial to enhancing your performance 10x more than your peers who don't. This is because you analyze problems.

Artificial intelligence has become the breakout technology in the past ten years, utilizing huge amounts of computing power to learn and identify patterns in data without the guidance of humans. These algorithms can be used on nearly any problem or question, provided there is enough input data for the algorithm to process to generate realistic results. This broad generalizability means that industries that have traditionally relied on purely human-driven research and development can now harness massive amounts of data to become more efficient – and potentially more profitable.

Edit: I have been getting quite a bit of feedback interpreting this article to mean that recursive functions are bad and iterative methods are always better. This couldn’t be further from what I believe — This article simply aims to discuss iteration as an alternative tool!

To improve readability instead of displaying full numbers very often there is a need to display shortened numbers. Here is an example of how to create your own customisable short number pipe in Angular8.

Understanding bit manipulation provide new approaches you never knew existed to solve a particular problem. Let us do what’s necessary to start developing this bit-wise approach.

Given an array, the algorithm to find the maximum subarray sum is called Kadane’s Algorithm.

Clone Graph Blind75 LeetCode Problem

So for anyone studying computer science either in college, boot camps or just self-learning, there is one topic that is always a stumbling block and that is Big O Notations.

Did you know that recursion can be optimized using a concept which works similar to the way how we jump on a trampoline.

Situations

We all know that Data structures and Algorithms are the backbone of every concept we use. There are many concepts involved in Data structures and algorithms (for the sake of convenience, I'll use DSA). There will be many questions for a beginner like how to start learning DSA, as there are many concepts involved and he/she might get confused at the start. In this post, we are going to see a roadmap for learning DSA, which worked out for my friends. I am not saying that this is the perfect roadmap for DSA. You can use your own plans also but this is just an idea. So let's get started.

The Longest Substring Without Repeating Characters problem is to find the longest substring of a given string where no characters repeat.

In the beginning, you will most likely try to use a brute force method to solve search problems; this is because it is the easiest and most rudimentary way to find a target. However brute force has a time cost; The Big O notation of brute force is usually and unacceptably equal to or greater than bigO(n²).

Given the head of a singly linked list, reverse the list, and return the reversed list.

The need of the hour, especially in the corporate world, is to find professionals who have sufficient knowledge about data structures and algorithms.

We'll take a look at the algorithm behind Unix's compress utility. We'll implement Lempel Ziv Welch and learn all about it.

9/15/2022: Top 5 stories on the Hackernoon homepage!

Let's take a look at the common approaches for implementing image contrast adjustments. We'll go over histogram stretching and histogram equalization.

Manacher’s Algorithm helps us find the longest palindromic substring in the given string. It optimizes over the brute force solution by using some insights into how palindromes work. How? Let’s see!

How to use Redis HyperLogLog data structure to store millions of unique items.

Watching a war in a digital age, his-story has the potential to become their-story, our-story, and humanity’s-story.

The First Missing Positive problem is an algorithm problem that requires finding the smallest positive integer that is not present in a given unsorted array of

Binary search works exactly like finding a word in a dictionary.

Remove Nth Node From End of List is a problem where given a linked list, the goal is to remove the nth node from the end of the list and return the updated list

If you have a considerable amount of experience with JavaScript, you are expected to solve complex coding challenges.

Given head, the head of a linked list, determine if the linked list has a cycle in it.

Understanding the Bachmann-Landau notation

A linked list is one of the most basic data structures in computer science. In this article, we will go through the following topics:

Detailed examples on how to return the middle node, given the head of a singly linked list.

Get an expletive move on and create a search engine that gives us some sought-after results, instead of paid-for ads from nincompoops.

There is no doubt that proof of stake (PoS) has become a popular consensus algorithm in the cryptocurrency world.

We've had a lot of digital image processing tools for a long time: Photoshop, Lightroom, GIMP, PhotoScape, and many more. However, in the past few years, one became popular among non-expert users due to its easiness of use and social features: Instagram. Have you ever wondered how Instagram filters work? It is actually pretty simple matrix operations! So simple we can build our own without any external library, just pure and simple HTML + JS. Let's build one now.

A Gaussian blur is applied by convolving the image with a Gaussian function. We’ll take the Gaussian function and we’ll generate an n x m matrix.

Proving that you're a JavaScript Expert would probably involve a test from prospective employers. These three tests are common ones that they use for recruiting

How Amazon Alexa AI processes and implements commands.

Developers of AI systems can create complex algorithms for a wide range of use cases, including in investing and trading.

The standard coding interview gauges coding prowess the same way an IQ test gauges intelligence. Basically, barely at all.

Learning Dynamic Programming and Memoization in Under 5 Minutes

In this lesson, we will try to check if the given number is a power of 2. We solve this by writing an efficient algorithm that takes an optimal amount of time.

Exhibia was nominated as one of the best startups in Miami in Startups of the Year hosted by HackerNoon. This is an interview with their CEO.

It is easier for a camel to pass through the eye of a needle than for a homo sapien to quit this junk.

Dijkstra's Two-Stack algorithm, lexical analysis, syntax analysis, tokens

Image credit— Grokking the Coding Interview: Patterns for Coding QuestionsHello all, I have been sharing a lot of coding interview questions for Programmers who are actively looking for Job, particularly for beginners and computer engineers who have just graduated and has no real job experience.

(A Merkle tree, as present in a typical blockchain)

Given two non-negative integers num1 and num2 represented as strings, return the product of num1 and num2, also represented as a string.

Dynamic programming approach.

Given the root of a binary tree, determine if it is a valid binary search tree (BST

It’s time for decentralized social apps to take over

The Weighted Random algorithm is used to send HTTP requests to Nginx servers. In this article, you'll learn how the Weighted Random algorithm works.

Meet the Writer: Hacker Noon's Contributor Peregrine Buckler, Quant @ Dune Capital, I use math’s amongst other things to spot patterns in financial markets.

Algorithms for beginners: fundamentals of recursion.

The staircase problem is a challenging and well-studied problem that may stump beginners. However, experienced developers can solve it in just five lines.

Demian is a bot creator for bots. He creates algorithmic trading strategies for all BOTS users to use. Today he explains how and why he does this.

Learn BFS and DFS, powerful algorithms to traverse and search data structures. Examples and step-by-step JavaScript code included.

Uber has quietly changed the way it pays drivers in several major cities across the U.S., using a new feature it’s calling “Upfront Fares.”

In one town, police say products like Nextdoor and Ring are helping fight crime. But racism and vigilantism are pervasive on safety platforms.

Understanding Debounce in Next.js

An explanation of arbitrage and a look at an efficient algorithm to find riskless instantaneous arbitrage opportunities across markets.

Genetic Algorithms , also referred to as simply “GA”, are algorithms inspired in Charles Darwin’s Natural Selection theory that aims to find optimal solutions for problems we don’t know much about. For example: How to find a given function maximum or minimum, when you cannot derivate it? It is based on three concepts: selection, reproduction, and mutation. We generate a random set of individuals, select the best ones, cross them over and finally, slightly mutate the result - over and over again until we find an acceptable solution. You can check some comparisons on other search methods on Goldberg's book.

Fenwick Tree is an interesting data structure that uses binary number properties to solve point update and range queries in your code in some situations.

An Interwith with Charlie G, the winner of “2021 HackerNoon Contributor of the Year - ALGORITHMS”.

A complete computer science study plan to become a software engineer. This GitHub repo will take you from ground level to advanced concepts.

In hamming distance problem, we find the number of positions where the bits are different for the given input with constant time complexity.

Understanding how the Shazam software and algorithm works by looking at spectrometers, audio libraries and more to uncover what makes the app recognise music.

A quick overview and comparison of shortest and longest path algorithms in graphs.

How does the ZIP format work?

Unless you've been living under a rock, then you probably heard all about #applecard. It's Apple's latest innovation, bringing the simplicity and design of their traditional products to the credit card space. But in the last few days, a shit storm emerged on Twitter about apparent discrimination by the Apple Card's credit worthiness algorithm.

It’s not just the running time; it’s the space usage too. We see algorithms used in pretty much every program that’s larger than a college project.

Since the market crashed in March of 2020 the rebound has been swift and irrational.

We'll take a look at how computers generate random numbers and the limitations of pseudo-random number generators.

What is dynamic programming and why should you care about it?

I bet you created at least once an RSA key pair, usually because you needed to connect to GitHub and you wanted to avoid typing your password every time. You diligently followed the documentation on how to create SSH keys and after a couple of minutes your setup was complete.

Programming is a complex and multifaceted field that encompasses a wide range of mathematical and computational concepts and techniques.

I recommend following along with my video if you want to see some examples and hear step by step how I coded binary search in Java!

Most companies use demand forecasting methods that are outdated 10-15 years ago: exponential smoothing, ARIMA, Moving Average, Holt-Winters method and others. Not only are they morally outdated, but they are not effective at solving the problem of inventory management for 94% of the product range and for almost all non-food products, which is proved by many scientific studies (see scientific note).

Justin Sun highlights why proof-of-work is an essential part of Ethereum, and lends his expert insights regarding the matter.

Depending on your political leaning, Facebook will show you two different perspectives on the Capitol Riot that took place on January 6, 2021.

Creating a moveable 3D model is easier than ever using automated rigging solutions. One is illustrated in this article. Continue reading to know how it works.

Python can be used in machine learning, especially through using these basic machine learning concepts as building blocks for data analysis and other functions.

First of all, let me start by saying that the ability to solve coding challenges is not a measure of how good a web developer you are, but it can show that you are a great developer and make you stand out from the crowd. Nobody needs coding challenges to create an outstanding web page using HTML, CSS (or it’s frameworks), and maybe even a little JavaScript.

My favorite parts of Computer Science are things that remind me of being human. Believe it or not Computers have this emergent property where as they become more complex they start to do things just like us. We touched on this when I wrote about Recursion. There I discussed how a computer function will call it self over and over until it gets the answer it wants. So very… human of it and to me this touches on problem solving. Memoization can extend this human like quality further.

A few months ago, Navigine R&D team started participating in Indoor Location & Navigation competition from XYZ10 and Microsoft Research.

Luiz Guilherme Fonseca Rosa from Brazil has been nominated for a 2020 Noonie as Hacker Noon Contributor of the Year - ALGORITHMS. The Noonies are Hacker Noon’s way of getting to know — from a community perspective —  what matters in tech today. So, we asked our Noonie Nominees to tell us. Here’s what Luiz had to share.

The AI and algorithms inside TikTok has made it the most addictive of all the social media platforms. Leaked documents reveal the secrets to TikTok addiction.

Understand how to reverse a string using recursion in C++ and Java

Here are the three main purposes of SORA's TBC and their huge positive impact on the economy.

A Texas-based real estate tech company is facing a new barrage of questions about whether its software is helping landlords coordinate rental pricing...

These four resources may be useful for learning about data structures and practicing making algorithms for your advanced programming needs in your work.

SVM works by finding a hyperplane in an N-dimensional space (N number of features) which fits to the multidimensional data while considering a margin.

Adi Shamir’s Secret Sharing is a cryptographic algorithm that allows distinct parties to jointly share ownership of a single secret by holding shares

We are trying to learn the basic concepts about heaps like inserting and extracting data from heaps and also the time complexity of heaps.

All data structures and algorithms concepts and solutions to various problems in Python3 stored in a structured manner to prepare for coding interviews.

In the digital era, you see people dropping reviews online as customers. We can even see companies seeking a platform to provide them with online reviews to boost their business. You might have heard or read about online review filters and how it might have caused frustrations or confusion. Understanding search engine filtering of customer reviews can help you minimize this vagueness.

Post their introduction, .map() and .filter() are used in conjunction to death galore in code nowadays because “it’s so easy”. But does blindly using these methods cause performance issues in your code? Let us dig in and find out. I am not going to get into the details of how these functions work because there is TONS of material available for the same.

Elliptic Curve Cryptography (ECC) is a modern public-key encryption technique famous for being smaller, faster, and more efficient than incumbents.

The first question that arises when solving a problem using dynamic programming(DP) is how to figure out that DP is a way to solve it?

This blockchain algorithm developed by the Archethic blockchain provides fast interaction between nodes in a decentralized network spread across the world.

Learn how to create your own traverse function in under 5 minutes.

A look at updated encryption standards based on strides in quantum cryptography.

Let's create a function that will return true if string is a prime number and return false if a number is not a prime.

Data structures and algorithms allows you to write better code, solve complex problems, and understand the inner workings of computer programs.

Learn how Jest finds related tests in an optimal way using the Breadth First Search (BFS) algorithm and how to leverage its API in your local development enviro

In this article, the breadth-first search algorithm is explained with examples and implementations, including how it can be modified to find the shortest paths.

Childhood moments with father

An engineer with a deep understanding of algorithms and data structures will be able to make informed design choices, and write programs that are more performant and easier to change.

In this part of creating your own programming language we will implement classes and at the end will write the real Stack implementation

TL;DR: Blockchain software startups can learn a lot about growth-hacking by observing startups in other industries. One great growth tactic: build B2B...

What is common between streaming movie on Netflix, searching air ticket on Google, buying clothes on Amazon? You rely on distributed computing to do it.

Automating My Manual Scalping Trading Strategy

Welcome back to Essential Algorithms, where I go over the many, many different algorithms every programmer should know and understand. Today's algorithm is the dead-simple, yet terribly inefficient, Bubble Sort.

The Big O is a way to measure how well your code solves a problem

SHA-2 (Secure Hash Algorithm 2), of which SHA-256 is a part, is one of the most popular hash algorithms around.

Discover how the binary search algorithm improves performance in Git and AWS Kinesis. Learn how to implement it in your own projects for better efficiency.

ShardingSphere 5.2.0 is released bringing new cloud-native possibilities, elastic migration from Oracle, MySQL, and PostgreSQL, and more features & enhancements

Major companies using AI and machine learning now use federated learning – a form of machine learning that trains algorithms on a distributed set of devices.

A nautilus seashell with a perfect spiral is the product of specific DNA that coded for its existence.

Why is it so hard to regulate algorithms in the United States?

A trip down memory lane avid reader. Let's take a walk through the core of it all: data structures. What are they and why are they so important? A 'hello' to a reader that might have missed our talk on Memory management, where we delved into what happens to our code in variable assignment. Do take a look, even if it's a refresher you're looking for.

Finally got through all the content around the much-hyped Fullmetal Alchemist in 2020, and I was not disappointed; quite the opposite. It evokes philosophical questions on the things we do and how we do them. So naturally, with software engineering for me.

Technology has revolutionized trading for individual investors in the early part of this century, from online trading tools to robo-advisors, to the rise of crypto and fintech applications.

When envisioning pop culture, depending on what generation you might be born into, the perceptions range from HAL 9000’s glowing Red Eye from 2001 to Ava from Ex-Machina. However, the most modern concept of pop culture comes hand in hand with artificial intelligence. To make the experience wholesome, we look at artificial intelligence or specifically, machine language and cryptography as sister fields to see the implications of the phenomena in modern-day culture as well as in the times to come.

Hands on tutorial for hyperparameter optimization of a RandomForestClassifier for Heart Disease UCI dataset with Weights and Biases Sweeps.

How does the GIF format work?

[146. On The Way From Sequence to

RandomAccessCollection in Swift](https://hackernoon.com/on-the-way-from-sequence-to-randomaccesscollection-in-swift) Evolution of computational complexity from the basic protocol Sequence to the RandomAccessCollection protocol in Swift for developers working on iOS platforms.

Algorithms on different social platforms rank your content and recommend users across the board if it’s something the algorithm thinks that users want to see.

Learning how to find the optimal q-value can produce significant improvements in a ML-algorithm's ability to learn both in terms of speed and quality.

See the implementation of the Viterbi algorithm in Python

Algorithmic auditing got press recently when HireVue, a popular hiring software company used by companies like Walmart and Goldman Sachs faced criticism.

I wrote a children's book on data science to inform others who have a hard time understanding data science and machine learning concepts, especially kids!

I started programming about 5 years ago. Ironically, only in the last year of my computer science degree. I was also made aware of the likes of Hackerrank and Hackerearth at the same time. I remember naively brute-forcing every single problem that I would come across on these platforms and later wonder why it would give me a TLE Error.

We are going to start a series of lessons based on Data Structures and Algorithms.

The next task in your calendar, the ranking position of your favorite sport team in the league, the contact list in your cell phone, all of these have an order. Order matters when we process information. We use order to make sense of our lives and to optimize our decisions. Imagine looking for a word in a dictionary with a mixed alphabetical order, or trying to find the cheapest product in a disordered pricing list. We order stuff to make more sound decisions (which in reality is an illusion), and this makes us more confident on the results.

Violence at the hands of an intimate partner has affected more than 600 million women globally, according to World Health Organization estimates

Case study: introducing the tools used in database protocol development with a troubleshooting guide for ShardingSphere-Proxy MySQL protocol issues.

One of the algorithm’s developers told ProPublica that leasing agents had “too much empathy” compared to computer generated pricing.

Affective computing is the study and development of systems and devices that can recognize, interpret, process, and simulate human affects.

Introduction

Let’s dissect a weird bit flag program that took me a second to understand. in doing so, we’ll hopefully gain a more robust understanding of how bit masks and bitwise OR logic can manipulate values effectively.

Automation is impacting many jobs traditionally done by humans. But bots replacing us is not my concern when it comes to artificial intelligence. Robots have been with us for a while, and while automation often displaces people, living organisms tend to move on to new tasks.

Google’s black box algorithm controls which political emails land in your main inbox. For 2020 presidential candidates, the differences are stark. By Adrianne Jeffries, Leon Yin, and Surya Mattu

Algorithms and heuristics are not the same. In this post, you'll learn how to distinguish them.

A preambular article describing the fundamental principles & intuition behind the “LIME” concept in Artificial Intelligence & Machine learning.

Image Source: Unified Infotech

A summary and review of: The Ethical Algorithm: The Science of Socially Aware Algorithm Design by Aaron Roth and Michael Kearns.

Social media is a valuable tool to express your identity. Even more so in times where social distance is the supposed new normal. But who decides the exact type of content you consume when scrolling through the news feeds of Facebook, Twitter, Reddit, or TikTok? 

Every programmer needs to know their algorithms and data structures. When studying them, you need to be sure to understand exactly what it does, what it's time and space complexity are and why they are that way, and be able to not only code it, but perform it by hand. This is what Essential Algorithms is all about.

Whether you're a retail or institutional investor, a traditional or alternative investor, you probably just lost a lot of money.

Artificial intelligence is changing the world as we know it. Form self-driving cars to weather predictions. Now it's taking on the stock market. Here's how.

The 99% Accurate Machine Learning Algorithms You Shouldn't Buy

How many more reports can you generate? How many sales figures do you have to tally, how many charts, how many databases, how many sql queries, how many 'design' pattern to follow, how many bugs to fix etc. etc.. because you get paid for it.. Fatigue sets in , purpose of living is being questioned, and just when you are about to yell '.. to hell with all this..', your mortgage comes due, and don't look for that escape vacation because we are in a corona virus shutdown..

Computer algorithms that scan everything from terror watch lists to eviction records spit out flawed tenant screening reports. And almost nobody is watching

On our first set of data structures, we get into the definition and scope of non-primitive structures. Have a look at the previous read on The Power of Data structures in case you feel a little lost. Right off the batt, we define what it means to be a non-primitive set, and how this can be further broken down.

Towards a Knowledge Graph economy. The Year of the Graph Newsletter, Summer 2020

Today I'd like to highlight the challenge of search functionality in Chinese. In this article, we will go through the main difficulties of full-text search implementation for CJK languages and how to overcome them with the help of Manticore Search.

Do you know how your apps work? Are you aware of what tech companies are doing in the back with your data? And what’s more revealing: do you know which of your action are actually influenced by those apps? When you take a trip with Uber, buy stuff on Amazon, or watch a movie on Netflix: when are you consciously deciding and when are you being heavily influenced?

In 2016, Google photos classified a picture of two African-Americans as “gorillas.” Two years later, Google had yet to do more than remove the word “gorillas” from its database of classifications. In 2016, it was shown that Amazon was disproportionately offering one-day shipping to European-American consumers. In Florida, algorithms used to recommend detention and parole decisions on the basis of risk of recidivism were shown to have a higher error rate among African-Americans, such that African-Americans were more likely to be incorrectly recommended for detention who would not go on to re-offend. When translating out of a language with gender-neutral pronouns, and into languages with gendered pronouns, Google’s word2vec neural network injects gender stereotypes into translations, such that pronouns become “he” when in conjunction with “doctor” (or “boss,” “financier,” etc.) but become “she” when translated in conjunction with “nurse” (or “homemaker,” or “nanny,” etc.).

How did we let the algorithms take over our lives?

A Python program to calculate the inlet or the outlet compressibility factor for a given gas based on the Redlich-Kwong equation of state.

Have you ever felt overwhelmed by an algorithm problem and don't know where to start?

In this post, we will look at prefix sums and how they can be used to solve a common coding problem, that is, calculating the sum of an array (segment). This article will use Java for the code samples but the concept should apply to most programming languages.

Heap data structure is a balanced binary tree data structure where the child node is placed in comparison to the root node and then arranged accordingly.

In the last post, we showed the character relationship for the Game of Thrones by using NetworkX and Gephi. In this post, we will show you how to access data in Nebula Graph by using NetworkX.

In this part of creating programming language, we'll implement the hybrid inheritance for the classes like in C++ and write a calculator with multiple classes

MO’s Algorithm aka Square Root Decomposition, a very efficient and easy technique to solve Range Query Problems (RQP). For MO’s Algorithm to work, the RQP has to be offline. In this post, we will understand about RQP, Offline RPQ, Naive Approach to solve RQP and an Efficient Approach using MO’s Algorithm.

What is Range Query Problem?

in this blog post, we are going to take a look at what is backtracking and how to implement it using ruby

Peter Norvig, the legendary Google mogul and AI titan, wrote a python essay to solve every Sudoku puzzle 10 years ago. Back then, he may not have expected that his code will inspire so many other posts and to be ported to so many different languages. For JavaScript, the latest version of the solver that I found was einaregilsson/sudoku from 2014

You may have been grinding all those algorithms question on various platforms for your next interview, ever wonder when can we actually use them. Well, I got to finally see them in action while creating a board game called 8 Puzzle. It is played on a 3-by-3 grid with 8 square tiles labeled 1 through 8 and a blank square. Your goal is to rearrange the tiles so that they are in order. You can check out my implementation to get a better idea here.

Companies have paid lip service to our digital wellbeing for too long. Now we need to see real change.

Detecting secrets in source code is like finding needles in a haystack: there are a lot more sticks than there are needles, and you don’t know how many needles might be in the haystack. In the case of secrets detection, you don’t even know what all the needles look like!

That sounds ideal, but what does it take to have real multithreading with appropriate locks and to secure your program so it can run smoothly without you worrying if you will ever get a deadlock or a race condition? Just some locks, semaphores, and a lot of time to think it through.

The Markup confirmed 124 carjackings and attempted carjackings of ride-hail drivers across the country. Drivers say the companies are doing little to help.

Whether it's consciously or subconsciously, we use numbers every single moment of our lives. Numbers help us navigate in what we refer to as real life, as they help us set fixed determinations of concepts that are impossible to comprehend otherwise, eliminating the need for "lagging."

Year of the Graph Newsletter, September 2019

Make use of your downtime and read something good!

Keyword research is a vital part of every optimization strategy. Steve Harvey's Family Feud helps us understand why its important.

Bill Ottman is the co-creator and CEO of Minds, a free and open source social network with crypto rewards. They continue to make waves as an alternative to the incumbent social network business model of surveillance capitalism. Bill has also been a guest on the Joe Rogan podcast. Today, he kindly took the time to answer some questions for Hacker Noon. 

Such scary words. It oozes math all over them…

An overview of Trees as a data structure. A software engineer's tool. Should I use a hashmap?

I'm sure you all have read a quote like this, "First solve the problem, then write the code". At first I took it lightly. I liked to follow a different approach, "Solving the problem with code". After coding for a long time, I realized the importance of solving the problem first before jumping into writing code. In this article, I will try explain why you should slow down and how to actually save your time. Also, this will make you a better programmer.

The Quick Sort is an interesting algorithm and a favorite among software engineers, with some unique advantages and quirks worth looking into. Quick Sort can be highly efficient, often outperforming Merge Sort, although certain cases can make it behave slowly like Bubble Sort. As always, we'll jump in first with a broad-strokes overview of how this particular algorithm works before exploring the finer points about why it behaves the way it does.

Let's go back one moment. A little further down to our data structures. The dear heaps and stacks of them.Quite literally.

Since we wrote ModelDB 1.0, a pioneering model versioning system, we have learned a lot and adapting it to the evolving ecosystem became a challenge. Hence we decided to rebuild from the ground up to support a model versioning system tailored to make ML development and deployment reliable, safe, and reproducible. 

YouTube's algorithm seems to be discriminating against BIPOC and LGBTQ content. A Supreme Court case might now end YouTube's protection against lawsuits.

Probabilistic data structures allow you to conquer the beast and give you an estimated view of some data characteristics

Let's go through the optimization of Multi-Scalar Multiplication Algorithm.

JavaScript implementation of so-called Seam Carving algorithm for the content-aware image resizing and objects removal. Dynamic programming approach is applied

In this article, I gave you an introduction to Dynamic Programming with several examples. Here I will solve 6 harder Dynamic Programming problems to show you how to approach them.

Written By Esco Obong (@escobyte on Twitter), Senior Software Engineer @Uber, Founder of Algorythm study group on Facebook and Black Software Engineers Career Support Group on LinkedIn.

I want to describe a common method used to sort array elements in alphabetical and numerical order.

Getty Images and Ali Wijaya

Love in the time of COVID is a… challenge, to say the least.

The hit series Game of Thrones by HBO is popular all over the world. Besides the unexpected plot twists and turns, the series is also known for its complex and highly intertwined character relationships. In this post, we will access the open source graph database Nebula Graph with NetworkX and visualize the complex character connections in Game of Thrones with Gephi.

To understand recursion, you must understand recursion. I will show you 13 different ways to traverse a tree to compare recursive and iterative implementations. This way, we will kill two birds with one stone: recursion and data structures and algorithms.

We found discriminatory ads can still appear, despite Facebook's efforts

I dive into LeetCode problem: 881, Boats to Save People. I try to use Count Sort to optimize my solution.

Predictions that deepfake videos will keep getting better are not matched by the realities of the technology. Here's a sober look at the problems.

This is the article I wish I had read when I started coding. I will dive deep into 20 problem-solving techniques that you must know to excel at your next interview.

I recently revisited three old posts on Django class-based views that I wrote for this blog, updating them to Django 3.0 (you can find them here and noticed once again that the code base uses mixin classes to increase code reuse. I also realised that mixins are not very popular in Python, so I decided to explore them, brushing up my knowledge of the OOP theory in the meanwhile.

Convert any task that requires creative problem solving into a simple, step-by-step procedure.

Before reading this article, make sure you have a good understanding of basic concepts of software development as Algorithms, Object Oriented design, Domain Driven Design. These will be the building blocks to digest the contents.