Dutch national flag problem in Javascript

Image
Dutch national flag problem and solution in Javascript Problem statement:   The Dutch national flag (DNF) problem is one of the most popular programming problems proposed by Edsger Dijkstra. The flag of the Netherlands consists of three colors: white, red, and blue. The task is to randomly arrange balls of white, red, and blue such that balls of the same color are placed together. Now, let's consider an array with 3 distinct values say 0, 1 and 2. We won't be using any sort method and we need to sort this array in 0(n). Input Array :  let   arr  = [ 0 ,  2 ,  1 ,  0 ,  1 ,  2 ,  0 ,  2 ]; Expected Output: [ 0, 0, 0, 1, 1, 2, 2, 2 ] Solution Approach : When we see expected output, we can clearly see that sorted array is divided into 3 sections having values 0 , 1 and 2. So, let's divide the array in 3 sections: a) from 0th index to left boundary b) from left boundary to right boundary c) from right boundary to last index. Now we will create 2 pointers : left (starting from 0

Javascript Codewars Problem: "Isograms"

  Codewars Problem and solution in Javascript

 
 

Objective: 

In this challenge, we will solve the “Isograms Codewars puzzle using javascript. 

Problem statement: 

An isogram is a word that has no repeating letters, consecutive or non-consecutive. Implement a function that determines whether a string that contains only letters is an isogram. Assume the empty string is an isogram. Ignore letter case. It must return the display text as shown in the examples: 


Examples: 

Input : Dermatoglyphics

Output : true


Input : aba 

Output:  false


Input : moOse

Output : false // -- ignore letter case


Input : isogram

Output : true




Solution Hint

we will create a character map from the given string and check if any character repeats or not and return true or false  accordingly. Note: Remember to convert string to lower case to make it case insensitive.


For understanding characterMap, refer the post.

  

  

Solution: 


function isIsogram(str){

  

  var charMap={}

  var strArr= str.toLowerCase().split('')

  for(let el of strArr){

    

    if(charMap[el]){

      return false;

    }

    else

      charMap[el]=1;

  }

Comments

Popular posts from this blog

Ice Cream Parlor : Hackerrank Problem and Solution

Javascript Problem: Find the next perfect square!!

Disemvowel Trolls || Codewars problem and solution in Javascript || Topic : Strings and RegEx