<commit_before>## algorithms

[![Build Status](https://travis-ci.org/vinnyoodles/algorithms.svg?branch=master)](https://travis-ci.org/vinnyoodles/algorithms)
[![Coverage Status](https://coveralls.io/repos/github/vinnyoodles/algorithms/badge.svg?branch=master)](https://coveralls.io/github/vinnyoodles/algorithms?branch=master)

This contains my practice and preparation for interview/whiteboarding problems. I'll start with the fundamentals and then begin working on more complicated algorithms.

## Table of Contents
- [Array: Greatest Subarray](https://github.com/vinnyoodles/algorithms/blob/master/src/array/greatestSubarry.js)
- [Array: Jumping Array](https://github.com/vinnyoodles/algorithms/blob/master/src/array/jumpingArray.js)
- [Array: Minimum Additions](https://github.com/vinnyoodles/algorithms/blob/master/src/array/minAdditions.js)
- [Graph: Largest Neighbor](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/largestNeighbor.js)
- [Graph: Path Sum](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/pathSum.js)
- [Graph: Traverse by the Largest Neighbor](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/gridTraversal.js)
- [Graph: Tree Traversal](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/TreeNode.js)
- [Graph: Sort Tree by Columns](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/columnSort.js)
- [Linked List: Reverse List](https://github.com/vinnyoodles/algorithms/blob/master/src/linkedlist/reverseList.js)
- [Linked List: Sum Two Lists](https://github.com/vinnyoodles/algorithms/blob/master/src/linkedlist/sumLists.js)
- [Recursion: Depth of an Array](https://github.com/vinnyoodles/algorithms/blob/master/src/recursion/depthFinder.js)
- [Recursion: Number of Paths in a Matrix](https://github.com/vinnyoodles/algorithms/blob/master/src/recursion/numberOfPathsInMatrix.js)
- [Recursion: Pascal's Triangle](https://github.com/vinnyoodles/algorithms/blob/master/src/recursion/pascalsTriangle.js)
- [Search: Binary Search](https://github.com/vinnyoodles/algorithms/blob/master/src/search/binarySearch.js)
- [Sort: Merge Sort](https://github.com/vinnyoodles/algorithms/blob/master/src/sort/mergesort.js)
- [String: Longest Subsequence](https://github.com/vinnyoodles/algorithms/blob/master/src/string/longestSubsequence.js)
- [System Design: LRU Cache](https://github.com/vinnyoodles/algorithms/blob/master/src/systemdesign/lrucache.js)

## Testing

```javascript
npm test
```


## License
[MIT License](https://github.com/vinnyoodles/algorithms/blob/master/LICENSE)<commit_msg>Fix typo in README<commit_after>## algorithms

[![Build Status](https://travis-ci.org/vinnyoodles/algorithms.svg?branch=master)](https://travis-ci.org/vinnyoodles/algorithms)
[![Coverage Status](https://coveralls.io/repos/github/vinnyoodles/algorithms/badge.svg?branch=master)](https://coveralls.io/github/vinnyoodles/algorithms?branch=master)

This contains my practice and preparation for interview/whiteboarding problems. I'll start with the fundamentals and then begin working on more complicated algorithms.

## Table of Contents
- [Array: Greatest Subarray](https://github.com/vinnyoodles/algorithms/blob/master/src/array/greatestSubarray.js)
- [Array: Jumping Array](https://github.com/vinnyoodles/algorithms/blob/master/src/array/jumpingArray.js)
- [Array: Minimum Additions](https://github.com/vinnyoodles/algorithms/blob/master/src/array/minAdditions.js)
- [Graph: Largest Neighbor](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/largestNeighbor.js)
- [Graph: Path Sum](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/pathSum.js)
- [Graph: Traverse by the Largest Neighbor](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/gridTraversal.js)
- [Graph: Tree Traversal](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/TreeNode.js)
- [Graph: Sort Tree by Columns](https://github.com/vinnyoodles/algorithms/blob/master/src/graph/columnSort.js)
- [Linked List: Reverse List](https://github.com/vinnyoodles/algorithms/blob/master/src/linkedlist/reverseList.js)
- [Linked List: Sum Two Lists](https://github.com/vinnyoodles/algorithms/blob/master/src/linkedlist/sumLists.js)
- [Recursion: Depth of an Array](https://github.com/vinnyoodles/algorithms/blob/master/src/recursion/depthFinder.js)
- [Recursion: Number of Paths in a Matrix](https://github.com/vinnyoodles/algorithms/blob/master/src/recursion/numberOfPathsInMatrix.js)
- [Recursion: Pascal's Triangle](https://github.com/vinnyoodles/algorithms/blob/master/src/recursion/pascalsTriangle.js)
- [Search: Binary Search](https://github.com/vinnyoodles/algorithms/blob/master/src/search/binarySearch.js)
- [Sort: Merge Sort](https://github.com/vinnyoodles/algorithms/blob/master/src/sort/mergesort.js)
- [String: Longest Subsequence](https://github.com/vinnyoodles/algorithms/blob/master/src/string/longestSubsequence.js)
- [System Design: LRU Cache](https://github.com/vinnyoodles/algorithms/blob/master/src/systemdesign/lrucache.js)

## Testing

```javascript
npm test
```


## License
[MIT License](https://github.com/vinnyoodles/algorithms/blob/master/LICENSE)
{'fraction_non_alphanumeric': 0.15381635025184037, 'fraction_numerical': 0.0, 'mean_word_length': 5.865691489361702, 'pattern_counts': {'":': 0, '<': 3, '<?xml version=': 0, '>': 3, 'https://': 44, 'lorem ipsum': 0, 'www.': 0, 'xml': 0}, 'pii_count': 0, 'substrings_counts': 0, 'word_list_counts': {'cursed_substrings.json': 0, 'profanity_word_list.json': 0, 'sexual_word_list.json': 0, 'zh_pornsignals.json': 0}}
{'dir': 'git-commits-cleaned', 'id': '6753180', 'n_tokens_mistral': 1766, 'n_tokens_neox': 1717, 'n_words': 210}