## Google Sheets as a Database: Introducing the Aspire Budgeting app

Open Source, Swift

Yeah you heard that right! Who in their right mind would think of using Google Sheets as a database for their app?

Read MoreAdventures in C++, iOS, Unix, and the biggest of all..Life!.

From India to California. In search of greener pastures. Writing about C++, Swift, algorithms and my life in general.

Read MoreOpen Source, Swift

Yeah you heard that right! Who in their right mind would think of using Google Sheets as a database for their app?

Read MoreAlgorithms, Binary Search Tree

The goal of this challenge is to build your own BinarySearchTree class which in addition to supporting *insert*, *find* and *delete* also supports a special operation *getRandomNode()* which returns a random node from the binary search tree with special consideration that each node in the binary search tree is **equally likely** to be selected.

Algorithms, Tree, Graph, DFS

There exists two very large binary trees, with one tree, `T1`

relatively much bigger than the other `T2`

. How can we efficiently determine if `T2`

is a sub tree of `T1`

?

Algorithms, Backtracking, Recursion

This is an interesting recursion problem where the aim is to find all the possible weaves of 2 arrays keeping the relative order of the elements the same.

Read MoreC++, Unix

The idea of the *fork()* system call is very beautifully described in the paper “The UNIX Time-Sharing System” by Dennis Ritchie himself and Ken Thompson during their days at Bell Laboratories.

Open Source, Swift

In December 2015, Apple made Swift an open source language and made it available on Github. This piqued my interest, I dug around the code base for a little, cloned it and felt like I had achieved something great. Fast forward to Spring 2017, I made my first contribution to the swift-corelibs-foundation, two contributions to be precise. The way I made these contributions was by digging around the code base for the `NSString`

class and implementing methods marked as `NSUnimplemented()`

. With two accepted PRs to swift-corelibs-foundation, the next thing I did was opened up my resume and under the Key Projects section, added a new bullet point right on top – Currently contribute to Apple’s open source Swift project on Github.

Algorithms, Array, Dynamic Programming

Given a m x n grid filled with non-negative numbers, find a path from top left to bottom right which minimizes the sum of all numbers along its path.

Read MoreAlgorithms, Backtracking, Trie

Given a 2D board and a list of words from the dictionary, find all words in the board.

Read MoreAlgorithms, Array, Backtracking, Depth First Search

Given a 2D board and a word, find if the word exists in the grid.

Read MoreAlgorithms, Binary Tree, Breadth First Search, Depth First Search

Given the `root`

node of a Binary Tree, a `target`

node and a distance `k`

, return a list of all nodes that are a distance `k`

from the `target`

.

Algorithms, Array, Binary Search

This is straight up Binary Search problem with some modifications. When we find the mid point of the given array, one of two things will hold true:

Read MoreAlgorithms, Backtracking, Recursion, String, Leetcode

Before we start solving this problem, let’s do some math first. The problem statement clearly states that we have *N* pairs of parentheses to work with. That means for a string to be considered as part of the solution, it must be of size *2N*.