This repository contains a collection of algorithmic problem-solving implementations written in JavaScript. It includes solutions to common coding challenges such as binary gaps, cyclic rotations, finding missing integers, and more. Each file focuses on solving a specific problem using efficient and optimized approaches.
This repository includes solutions to various algorithmic challenges, implemented in JavaScript. These problems focus on array manipulation, number theory, optimization, and logical puzzles. Each JavaScript file represents a unique coding problem, providing efficient and clear solutions.
- BinaryGap.js: Finds the maximum binary gap in a number's binary representation.
- CountDiv.js: Counts the number of integers divisible by a given number within a range.
- CyclicRotation.js: Performs cyclic rotation on an array.
- FrogJump.js: Calculates minimum jumps for a frog to reach the other side of a river.
- FrogRiverOne.js: Determines the earliest time a frog can cross a river.
- GenomicRangeQuery.js: Answers genomic range queries using prefix sums.
- MaxCountersOptimized.js: Optimizes the operation of a max counter with resets.
- MissingIntger.js: Finds the smallest missing positive integer from an array.
- OddOccurrencesInArray.js: Identifies the element that occurs an odd number of times in an array.
- TapeEquilibrium.js: Minimizes the difference between two parts of a split array.
- PermCheck.js: Verifies if an array is a permutation.
- merging2Packages.js: Merges two packages efficiently.
- getEmailInfo.js: Retrieves information from an email dataset.
Each file can be run independently using Node.js. To execute a specific algorithm, run the following command:
node filename.js
Feel free to contribute by optimizing the existing solutions or adding more algorithms to the collection!
This project is open-source and available under the MIT License.