Sherlock and the Valid String

It is Sunday March 15, 2020 and it is a sunny day in the Twin Cities of Minneapolis and St. Paul. The current temperature is about 22 F. It has gone up a few degrees since I woke up today. The high is expected to be in the low 40’s. It seems like it is going to be a nice warm winter day.

It has been a crazy week. The count of confirmed COVID-19 cases in MN according to the StarTribune up to last Friday was 9. That said; my wife and I decided to get some supplies (e.g., two packages of toilet paper at Costco) and remain at home (with a few exceptions) until the pandemic is under control. I will write a set of posts regarding COVID-19 in a separate category. Continue reading “Sherlock and the Valid String”

Sherlock and Anagrams

The news is full of articles and posts about the corona virus. Before getting in panic mode, stop by the CDC “Coronavirus Disease 2019 (COVID-19)” web page and get informed.

My wife and I follow and watch several YouTube channels. We are mostly interested in foods to prepare and consume and places to visit on our next holiday. Yesterday we watched a new episode on one channel that deals with food and travel in Sicily, Italy. The channel is hosted by a couple of Americans that have roots in Europe and Italy.

They had some interesting facts about how to make a disinfectant using alcohol, aloe vera and some scents. I was not going to mention the specific video, but as I am going over this post, I feel that it is missing. The video is named “SPECIAL EDITION: Coronavirus update from Sicily!”. Quite appropriate for the times we are living in. Continue reading “Sherlock and Anagrams”

Sort on Frequency

UPDATE

Noticed that some of the code blocks had additional characters e.g., &s. I removed and inserted the  original code blocks. The code looks good. Sorry about that.

Today is Saturday March 07, 2020 and the high for today in Apple Valley, MN is forecasted to be in the low to mid 50’s. Tomorrow we should be hitting low to mid 60’s. We can call it global warming or whatever you would like, but the global climate is changing. We can debate the reasons but Occam’s Razor problem-solving principle would attribute it to us humans.

One way or the other, my wife and I believe that we are doing our part. Starting this month, the neighborhood has hired a new company for garbage removal. They collect both bins every week. Possible smell during summer would prevent us from keeping our garbage for more than a week, but we generate such a small amount that the service could pick it up once a month. Continue reading “Sort on Frequency”

A or B

Over the weekend I watched the YouTube video “Dealing with Negative Comments | AMA #3 – Ask Me Anything with Lex Fridman”. I have watched a few of his videos. I do enjoy them to the point that I have subscribed to them. There is one in which Lex interviews Donald Knuth and other where he interviews Andrew Ng. Both videos are over an hour so I will watch them over the weekend.

If you are interested in getting information about Lex Fridman you can find it here or there.

I picked the challenge “A or B” from HackerRank after receiving an email message. I guess that if you solve a few of their problems they like you to continue visiting their site and solving additional challenges. I like to work on one or two a week. I believe it is the only way to learn and / or refresh material. Continue reading “A or B”

Is Permutation

Let’s define the requirements for this algorithm. We are given two sets of integers. The idea is to check if the sets are permutations of each other. If they are, return YES; otherwise return NO.

First let’s make sure we agree with the definition of permutation. For the sets to be permutations we must have the same number of elements in both sets. Each set must have the same counts for each entry. For example if the sets are:

1 2 3 4 5 6

6 5 4 3 2 1

Then we would return YES. Both sets have the same length (six in this case) the numbers are the same on both sets, and the count of each number matches (one in this case).

7 6 5 0 9 7

7 6 1 0 9 7

Given that 5 is in the first set, but not in the second and 1 is in the second, but not in the first, these are not permutations of each other so we would return NO. Continue reading “Is Permutation”

Binary Tree Sum

In this post we will develop a couple methods to collect some information from a binary tree. The first method will be the base, and the second will be an enhancement of the first.

The first requirement is:  given a binary tree with double values, compute the sum of all nodes in the tree.

The second requirement is:  given a binary tree with double values, compute the sum of all nodes whose values are in a specified range (e.g., [ 10.0 : 15.0 ]). Continue reading “Binary Tree Sum”

The Full Counting Sort

306 Subscribers

Today I decided to solve a HackerRank problem. Randomly I selected The Full Counting Sort. If interested read the requirements. I read the requirements and decided to give it a try.

Based on my experience with this problem you might want to follow my advice. Work on the algorithm and make sure it passes the two sample test cases. Once you are done, submit your solution. If you have a valid approach then chances are that your solution will fail test #5, it will time out. I generated up to three different versions of the countSort() function. I could not get past test #5 because it would time out. I spent time reading the discussions and they did not make much sense. I even bought test #5 for some hackos. By the way, the test includes 1,000,000 strings which I could not download no matter how many times I tried. With this problem do not purchase test #5. You will not be able to run it. Continue reading “The Full Counting Sort”

Sum of Two

I received a notification via email that Nicholas White had put a new video in YouTube. If you are interested, the video is named Google Coding Interview Question – Sum of Two. I enjoy working on problems. Try to get a few each week.

Let’s skip the chit chat and go directly to this problem. The statement for the problem follows:

You have two integer arrays a and b, and an integer target value v.

Determine whether there is a pair of numbers, where one number is taken from a and the other from b, that can be added together to get a sum of v.

Return true if such a pair exists, otherwise return false. Continue reading “Sum of Two”

First Duplicate

This morning in the Twin Cities of Minneapolis and St. Paul we woke up with a temperature of -11 F. The central heating unit worked overtime last night. It was quite dry indoors. Not sure why this happens due to the fact that the central heating as a built in humidifier and air exchange sub systems.

Yesterday morning I read the article “Do You Solve Programming Problems or Complete Exercises? (The Difference Matters.)” by Amy Haddad. She makes a difference between problem-solving and solving exercises. I agree with her interpretation. If interested read her article and possibly comment in her or my post.

Yesterday evening, I was browsing YouTube and ran into the video “Google Coding Interview Question – firstDuplicate” by Nicholas White. Continue reading “First Duplicate”

Cipher

I was somewhat busy over the weekend. My wife and I were going to make some cannoli but for simplicity we decided to bake some chocolate cornetto. We are planning on making cannoli next weekend.

Last week I was reading the web page from Microsoft Dynamics 365 Connected Store. It uses video cameras and IoT devices to capture non-PII (Personally Identifiable Information) from customers that can be used by the store to improve service and increase sales. I spend time reading different related articles and watching YouTube videos. I am impressed with the approach to the subject by Microsoft. Most companies try to incorporate PII data but that may have many implications for the store, customer and the ability to offer the system to customers in different parts of the world due to local laws. I can go on and on but that would take us out of the topic for this post. Continue reading “Cipher”