An open API service indexing awesome lists of open source software.

https://github.com/prasad89/neetcode-150-in-go

Solutions to Neetcode 150 problems in Go, focused on mastering algorithms and data structures
https://github.com/prasad89/neetcode-150-in-go

golang neetcode

Last synced: about 1 year ago
JSON representation

Solutions to Neetcode 150 problems in Go, focused on mastering algorithms and data structures

Awesome Lists containing this project

README

          

# Neetcode 150 Solutions in GoLang

This repository contains my solutions to the **Neetcode 150** problems, implemented in **GoLang**. It serves as a structured approach to mastering data structures, algorithms, and problem-solving for technical interviews.

## Getting Started

Each topic will have its own folder, with GoLang files for individual problems. To run a solution:

```bash
go run path/to/solution.go
```

## Topics Covered

### Arrays & Hashing

- [Contains Duplicate](./Arrays%20%26%20Hashing/containsDuplicate.go)
- [Valid Anagram](./Arrays%20%26%20Hashing/validAnagram.go)
- [Two Sum](./Arrays%20%26%20Hashing/twoSum.go)
- [Group Anagrams](./Arrays%20%26%20Hashing/groupAnagrams.go)
- [Top K Frequent Elements](./Arrays%20%26%20Hashing/topKFrequent.go)
- [Encode and Decode Strings](./Arrays%20%26%20Hashing/encodingDecoding.go)
- [Product of Array Except Self](./Arrays%20%26%20Hashing/productOfArrayExceptSelf.go)
- [Valid Sudoku](./Arrays%20%26%20Hashing/validSudoku.go)
- [Longest Consecutive Sequence](./Arrays%20%26%20Hashing/longestConsecutiveSequence.go)

---

### Two Pointers

- [Valid Palindrome](./Two%20Pointers/validPalindrome.go)
- [Two Sum II Input Array Is Sorted](./Two%20Pointers/twoSumII.go)
- [3Sum](./Two%20Pointers/threeSum.go)
- [Container With Most Water](./Two%20Pointers/containerWithMostWater.go)
- [Trapping Rain Water](./Two%20Pointers/trappingRainWater.go)

---

### Linked List

- [Reverse Linked List](./Linked%20List/reverseLinkedList.go)
- [Merge Two Sorted Lists](./Linked%20List/mergeTwoSortedLists.go)
- [Linked List Cycle](./Linked%20List/linkedListCycle.go)
- [Reorder List](./Linked%20List/reorderList.go)
- [Remove Nth Node From End of List](./Linked%20List/removeNthNodeFromEndOfList.go)
- [Copy List With Random Pointer](./Linked%20List/copyListWithRandomPointer.go)
- [Add Two Numbers](./Linked%20List/addTwoNumbers.go)
- [Find The Duplicate Number](./Linked%20List/findTheDuplicateNumber.go)
- [LRU Cache](./Linked%20List/lruCache.go)
- [Merge K Sorted Lists](./Linked%20List/mergeKSortedLists.go)
- [Reverse Nodes In K Group](./Linked%20List/reverseNodesInKGroups.go)

---

### Trees

- [Invert Binary Tree](./Trees/invertBinaryTree.go)
- [Maximum Depth of Binary Tree](./Trees/maximumDepthOfBinaryTree.go)
- [Diameter of Binary Tree](./Trees/diameterOfBinaryTree.go)
- [Balanced Binary Tree](./Trees/balancedBinaryTree.go)
- [Same Tree](./Trees/sameTree.go)
- [Subtree of Another Tree](./Trees/subtreeOfAnotherTree.go)
- [Lowest Common Ancestor of a Binary Search Tree](./Trees/lowestCommonAncestorOfBinarySearchTree.go)
- [Binary Tree Level Order Traversal](./Trees/binaryTreeLevelOrderTraversal.go)
- [Binary Tree Right Side View](./Trees/binaryTreeRightSideView.go)
- [Count Good Nodes in Binary Tree](./Trees/countGoodNodesInBinaryTree.go)
- [Validate Binary Search Tree](./Trees/validBinarySearchTree.go)
- [Kth Smallest Element in a BST](./Trees/kthSmallestIntegerInBST.go)
- [Construct Binary Tree from Preorder and Inorder Traversal](./Trees/constructBinaryTreeFromPreorderAndInorderTraversal.go)
- [Binary Tree Maximum Path Sum](./Trees/binaryTreeMaximumPathSum.go)
- [Serialize and Deserialize Binary Tree](./Trees/serializeAndDeserializeBinaryTree.go)

---

### Greedy

- [Maximum Subarray](./Greedy/maximumSubarray.go)
- [Jump Game](./Greedy/jumpGame.go)
- [Jump Game II](./Greedy/jumpGameII.go)
- [Gas Station](./Greedy/gasStation.go)
- [Hand of Straights](./Greedy/handOfStraights.go)
- [Merge Triplets to Form Target Triplet](./Greedy/mergeTripletsToFormTargetTriplet.go)
- [Partition Labels](./Greedy/partitionLabels.go)
- [Valid Parenthesis String](./Greedy/validParenthesisString.go)

---

### Intervals

- [Insert Interval](./Intervals/insertInterval.go)
- [Merge Intervals](./Intervals/mergeIntervals.go)
- [Non Overlapping Intervals](./Intervals/nonOverlappingIntervals.go)
- [Meeting Rooms](./Intervals/meetingRooms.go)
- [Meeting Rooms II](./Intervals/meetingRoomsII.go)
- [Minimum Interval to Include Each Query](./Intervals/minimumIntervalToIncludeEachQuery.go)

---