# My 100 Days Of Code Challenge

###
Raunak Ramakrishnan
*Updated on *
・1 min read

I have started the 100 days of code challenge.

I intend to use this time to check out new languages and frameworks and solve some fun problems.

I will update this post with my logs.

**Aug 13 2018 D0** : Algorithms for calculating number of combinations and generating them in a lexicographical increasing order.

## Algorithms: Generating Combinations #100DaysOfCode

### Raunak Ramakrishnan

**Aug 14 2018 D1** : Working on algorithm for generating all permutations. First I managed to generate all possible `r`

repetitions of `n`

i.e `n^r`

. Next, I read up and wrote code on Heap's algorithm. I am still not sure of the intuition behind the algorithm. Also, it does not generate the permutations in lexicographical increasing order.

**Aug 15 2018 D2** : Learned and implemented an algorithm that generates all permutations in a lexicographical order. It is not as efficient as Heap's algorithm.

**Aug 16 2018 D3** : Stumbled across the game of Set. Wrote a small python script which generates all solutions of any given game.

**Aug 17 2018 D4** : Learning to use Puppeteer.js along with Google Cloud Functions. This dev.to post by @_mertsimsek
was very useful in getting me started.

**Aug 18 2018 D5** : Read about Gray Codes, an alternative way of ordering binary numbers in TAOCP Vol 4. Wrote a blog post exploring some of their properties and how to generate them.

## Algorithms: Gray Binary Code - A different way of ordering numbers

### Raunak Ramakrishnan

**Aug 19 2018 D6** : Wrote a script which calculates iterations for Conway's Game of Life

**Aug 20 2018 D7** : Went through some Dynamic programming problems. Staircase problem is a good example of DP.

**Aug 21 2018 D8**: More recursion and DP. Towers of Hanoi and Longest unique sub-string problem.

**Aug 24 2018 D9**: After 2 days break due to travel, got back to C and linked lists. I am working through Stanford's Linked List problems.

**Aug 25 2018 D10** Working on a Sudoku solver. Made some more progress on the linked list problems from yesterday.

**Aug 26 2018 D11** My sudoku solver can solve easy sudokus from Code Wars

**Aug 27 2018 D12** Reading up on back-tracking and n-queens problem.

**Aug 28 2018 D13** Some fun with numpy and pandas and setting up virtualenvs.

**Aug 29 2018 D14** Solved Run Length Encoding problem recursively

**Aug 30 2018 D15** Data visualization using matplotlib in Python

**Aug 31 2018 D16** 1D Cellular Automata in Java

**Sep 1 2018 D17** Solved some regex golf problems

**Sep 2 2018 D18** Played around with TMDB API using Python

**Sep 3 2018 D19** Some interactive graph visualizations using Gephi

**Sep 4 2018 D20** Implemented Tries in Java

**Sep 5 2018 D21** Codewars kata on displaying a Tic-tac-toe board in C

**Sep 6 2018 D22** Dynamic programming - Coin change problem!

**Sep 7 2018 D23** Data cleaning using OpenRefine

**Sep 8 2018 D24** Using SQLite for importing tabular data

**Sep 9 2018 D25** SQLite window functions

**Sep 13 2018 D26** After 3 day break because of job interviews and travel, a simple Python problem on moving 0s to the end of list on Codewars

**Sep 14 2018 D27** Full-text search using SQLite (FTS4 and FTS5 engines)

**Sep 15 2018 D28** n-Queens in Python using backtracking in just 20 lines! Code here: gist

**Sep 16 2018 D29** Playing around with D3.js for data visualization

**Sep 17 2018 D30** Creating SVGs of various shapes in HTML. Awesome guide here

**Sep 18 2018 D31** Befunge interpreter on Codewars

**Sep 19 2018 D32** Learned more about JS Array.reduce

**Sep 20 2018 D33** Learned more about git branching and detaching from HEAD commit

**Sep 21 2018 D34** Learned to use sed effectively

**Sep 22 2018 D35** [os.walk] in Python is very nifty for crawling the filesystem!

**Sep 23 2018 D36** More d3.js, visualizations using choropleths for maps

**Sep 24 2018 D37** Learned how OOM killer works on Linux. Wrote an article here

Have started working once again. I am putting this on hiatus till I find more time. Meanwhile, I will continue posting blog posts on my learning.