trekhleb/javascript-algorithms

πŸ“ Algorithms and data structures implemented in JavaScript with explanations and links to further readings

196,283
Stars
over 8 years
Age
0
Published reviews
0
Questions

Topics

Explore related topics

Jump into the topic listings this repository belongs to.

Measured history

Project metrics

Weekly GitHub totals with 30, 90, and 180 day views.

Weekly star gains

Jul 19, 2026

Current54

Previous33

Weekly star gains

54270
Full metrics details

GitHub GraphQL current stargazer cohort, reconstructed from starredAt events and totalCount retrieved in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

40 observed daily rows. Missing days are not fabricated.

DateValue

Cumulative stars

Jul 19, 2026

Current196,275

Previous196,221

Cumulative total

196,27598,1380
Full metrics details

Running total of the GitHub GraphQL stargazer count over time (not weekly deltas), reconstructed from starredAt events and totalCount in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

40 observed daily rows. Missing days are not fabricated.

DateValue

1) Project Overview

You use trekhleb/javascript-algorithms as a structured reference for algorithms and data structures in JavaScript, with readable implementations and linked reading material. You get value when your team needs a shared, code-first learning base for interview prep, onboarding, and computer science refresh work.

You should treat this repository as a learning and reference asset, not as a drop-in production dependency. You read, run, and adapt examples to your own codebase rather than importing this repository as a runtime library.

2) Key Challenges Addressed

You usually hit three recurring problems during algorithm practice: inconsistent naming, fragmented explanations, and weak connection between concept and executable code. You address those problems here by working from one repository that keeps implementations and concept notes close together.

  • You map abstract topics to runnable JavaScript files quickly.
  • You align your team on one terminology set for structures and complexity discussions.
  • You move from concept to experimentation without building scaffolding from scratch.

3) Getting Started

You can start with a lightweight workflow:

git clone https://github.com/trekhleb/javascript-algorithms.git
cd javascript-algorithms

Then you open the repository README and the src tree to pick one structure or algorithm at a time, run the implementation locally, and trace input/output behavior with your own small test cases.

Sharp edges you should expect immediately:

  • You need baseline JavaScript and Big-O familiarity to move quickly.
  • You need a consistent internal path for practice, because the repository covers many topics and can feel broad without a sequence.

4) Features and Use Cases

You get broad topic coverage across classic data structures and algorithms, plus explanation-first organization that supports steady progression.

  • Interview preparation: You rehearse common patterns by reading and rewriting implementations from memory.
  • Onboarding: You give new teammates one codebase for shared vocabulary and baseline problem-solving style.
  • Academic refresh: You reconnect theory and code by pairing each topic with further reading.
  • Code review training: You use known algorithm implementations to practice clarity, naming, and complexity reasoning.

5) Ecosystem and Dependencies

You usually pair this repository with challenge platforms and language-specific algorithm collections when your team studies across multiple stacks.

You gain cross-language comparison, broader problem catalogs, and alternate explanation styles by combining these resources in one practice plan.

6) Architectural Overview

You work with a content-first architecture: topic directories, implementation files, and explanation material linked closely enough for quick context switching. You benefit from this structure because your team can review concept, inspect code, and run local experiments in short cycles.

Design implications for your team:

  • You get extensibility through file-based additions for new algorithms.
  • You keep operability simple because you mostly need local cloning and standard JavaScript tooling.
  • You keep upgrade risk low because you consume examples and patterns, not a tightly coupled runtime package.

7) Pros and Cons

  • Pro: You get readable JavaScript implementations that support fast concept-to-code transfer.
  • Pro: You keep learning momentum with linked readings and structured topic organization.
  • Pro: You can standardize interview prep across your team with one shared repository.
  • Con: You do not get production-ready APIs for direct application integration.
  • Con: You still need your own progression path to avoid jumping randomly between topics.
  • Con: You need supplementary problem sets for large-scale deliberate practice.

8) Comparison and Alternatives

Measured 90-day trends for this project and its alternatives.

GitHub stars

Weekly star gains

2771390
Full metrics details

GitHub GraphQL current stargazer cohort, reconstructed from starredAt events and totalCount retrieved in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

Javascript Algorithms

GitHub GraphQL current stargazer cohort, reconstructed from starredAt events and totalCount retrieved in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

40 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Python

GitHub GraphQL current stargazer cohort, reconstructed from starredAt events and totalCount retrieved in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

80 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub GraphQL current stargazer cohort, reconstructed from starredAt events and totalCount retrieved in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

180 observed daily rows. Missing days are not fabricated.

DateValue
cp-algorithms

GitHub GraphQL current stargazer cohort, reconstructed from starredAt events and totalCount retrieved in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

40 observed daily rows. Missing days are not fabricated.

DateValue
doocs/leetcode

GitHub GraphQL current stargazer cohort, reconstructed from starredAt events and totalCount retrieved in one stable pagination walk. GitHub does not expose historical unstar events, so this is not an exact ledger of past star counts.

30 observed daily rows. Missing days are not fabricated.

DateValue

Issues opened

Weekly total

840
Full metrics details

GitHub API observation. Historical values render only when the source provides a real observation for that day.

The Algorithms Python

GitHub API observation. Historical values render only when the source provides a real observation for that day.

36 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub API observation. Historical values render only when the source provides a real observation for that day.

178 observed daily rows. Missing days are not fabricated.

DateValue

Issues closed

Weekly total

1680
Full metrics details

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

The Algorithms Python

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

36 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

178 observed daily rows. Missing days are not fabricated.

DateValue

Pull requests opened

Weekly total

1890
Full metrics details

GitHub API observation. Historical values render only when the source provides a real observation for that day.

The Algorithms Python

GitHub API observation. Historical values render only when the source provides a real observation for that day.

36 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub API observation. Historical values render only when the source provides a real observation for that day.

178 observed daily rows. Missing days are not fabricated.

DateValue

Pull requests closed

Weekly total

23120
Full metrics details

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

The Algorithms Python

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

36 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

178 observed daily rows. Missing days are not fabricated.

DateValue

Pull requests merged

Weekly total

950
Full metrics details

GitHub API observation. Historical values render only when the source provides a real observation for that day.

The Algorithms Python

GitHub API observation. Historical values render only when the source provides a real observation for that day.

36 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub API observation. Historical values render only when the source provides a real observation for that day.

178 observed daily rows. Missing days are not fabricated.

DateValue

Open/closed pull request ratio

Weekly average

100500
Full metrics details

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

Javascript Algorithms

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

40 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Python

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

80 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

180 observed daily rows. Missing days are not fabricated.

DateValue
cp-algorithms

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

40 observed daily rows. Missing days are not fabricated.

DateValue
doocs/leetcode

GitHub Search pull-request totals queried for exact UTC days; rolling values are sums of proven daily counts.

30 observed daily rows. Missing days are not fabricated.

DateValue

Open/closed issues ratio

Weekly average

100500
Full metrics details

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

Javascript Algorithms

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

40 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Python

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

80 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

180 observed daily rows. Missing days are not fabricated.

DateValue
cp-algorithms

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

40 observed daily rows. Missing days are not fabricated.

DateValue
doocs/leetcode

GitHub Search issue totals queried for exact UTC days; rolling values are sums of proven daily counts.

30 observed daily rows. Missing days are not fabricated.

DateValue

Releases

Weekly total

110
Full metrics details

GitHub release published_at events bucketed by UTC day; drafts are excluded.

Javascript Algorithms

GitHub release published_at events bucketed by UTC day; drafts are excluded.

40 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Python

GitHub release published_at events bucketed by UTC day; drafts are excluded.

80 observed daily rows. Missing days are not fabricated.

DateValue
The Algorithms Java

GitHub release published_at events bucketed by UTC day; drafts are excluded.

180 observed daily rows. Missing days are not fabricated.

DateValue
cp-algorithms

GitHub release published_at events bucketed by UTC day; drafts are excluded.

40 observed daily rows. Missing days are not fabricated.

DateValue
doocs/leetcode

GitHub release published_at events bucketed by UTC day; drafts are excluded.

30 observed daily rows. Missing days are not fabricated.

DateValue

Hotness score

Weekly average

100500
Full metrics details

Derived only from GitHub GraphQL starredAt events after daily star totals are reconciled.

Javascript Algorithms

Derived only from GitHub GraphQL starredAt events after daily star totals are reconciled.

40 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.40 Γ— Hot today + 0.40 Γ— Hot week + 0.20 Γ— Breakout.

  • Same-day multiplier = stars 1d Γ· max(1, stars 7d Γ· 7)
  • Weekly multiplier = stars 7d Γ· max(1, stars 30d Γ· 30 Γ— 7)
  • Fortnight multiplier = stars 14d Γ· max(1, stars 90d Γ· 90 Γ— 14)
  • Hot today = clamp(70 Γ— log-scale(stars 1d, 1000) + 30 Γ— breakout-scale(same-day, 4))
  • Hot week = clamp(75 Γ— log-scale(stars 7d, 5000) + 25 Γ— breakout-scale(weekly, 3))
  • Breakout = clamp(35 Γ— breakout-scale(same-day, 4) + 40 Γ— breakout-scale(weekly, 3) + 25 Γ— breakout-scale(fortnight, 2.5))
DateStarsStars 1dStars 7dStars 14dStars 30dStars 90dSame-day multiplierWeekly multiplierFortnight multiplierHot todayHot weekBreakoutStored score
The Algorithms Python

Derived only from GitHub GraphQL starredAt events after daily star totals are reconciled.

80 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.40 Γ— Hot today + 0.40 Γ— Hot week + 0.20 Γ— Breakout.

  • Same-day multiplier = stars 1d Γ· max(1, stars 7d Γ· 7)
  • Weekly multiplier = stars 7d Γ· max(1, stars 30d Γ· 30 Γ— 7)
  • Fortnight multiplier = stars 14d Γ· max(1, stars 90d Γ· 90 Γ— 14)
  • Hot today = clamp(70 Γ— log-scale(stars 1d, 1000) + 30 Γ— breakout-scale(same-day, 4))
  • Hot week = clamp(75 Γ— log-scale(stars 7d, 5000) + 25 Γ— breakout-scale(weekly, 3))
  • Breakout = clamp(35 Γ— breakout-scale(same-day, 4) + 40 Γ— breakout-scale(weekly, 3) + 25 Γ— breakout-scale(fortnight, 2.5))
DateStarsStars 1dStars 7dStars 14dStars 30dStars 90dSame-day multiplierWeekly multiplierFortnight multiplierHot todayHot weekBreakoutStored score
The Algorithms Java

Derived only from GitHub GraphQL starredAt events after daily star totals are reconciled.

180 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.40 Γ— Hot today + 0.40 Γ— Hot week + 0.20 Γ— Breakout.

  • Same-day multiplier = stars 1d Γ· max(1, stars 7d Γ· 7)
  • Weekly multiplier = stars 7d Γ· max(1, stars 30d Γ· 30 Γ— 7)
  • Fortnight multiplier = stars 14d Γ· max(1, stars 90d Γ· 90 Γ— 14)
  • Hot today = clamp(70 Γ— log-scale(stars 1d, 1000) + 30 Γ— breakout-scale(same-day, 4))
  • Hot week = clamp(75 Γ— log-scale(stars 7d, 5000) + 25 Γ— breakout-scale(weekly, 3))
  • Breakout = clamp(35 Γ— breakout-scale(same-day, 4) + 40 Γ— breakout-scale(weekly, 3) + 25 Γ— breakout-scale(fortnight, 2.5))
DateStarsStars 1dStars 7dStars 14dStars 30dStars 90dSame-day multiplierWeekly multiplierFortnight multiplierHot todayHot weekBreakoutStored score
cp-algorithms

Derived only from GitHub GraphQL starredAt events after daily star totals are reconciled.

40 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.40 Γ— Hot today + 0.40 Γ— Hot week + 0.20 Γ— Breakout.

  • Same-day multiplier = stars 1d Γ· max(1, stars 7d Γ· 7)
  • Weekly multiplier = stars 7d Γ· max(1, stars 30d Γ· 30 Γ— 7)
  • Fortnight multiplier = stars 14d Γ· max(1, stars 90d Γ· 90 Γ— 14)
  • Hot today = clamp(70 Γ— log-scale(stars 1d, 1000) + 30 Γ— breakout-scale(same-day, 4))
  • Hot week = clamp(75 Γ— log-scale(stars 7d, 5000) + 25 Γ— breakout-scale(weekly, 3))
  • Breakout = clamp(35 Γ— breakout-scale(same-day, 4) + 40 Γ— breakout-scale(weekly, 3) + 25 Γ— breakout-scale(fortnight, 2.5))
DateStarsStars 1dStars 7dStars 14dStars 30dStars 90dSame-day multiplierWeekly multiplierFortnight multiplierHot todayHot weekBreakoutStored score
doocs/leetcode

Derived only from GitHub GraphQL starredAt events after daily star totals are reconciled.

30 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.40 Γ— Hot today + 0.40 Γ— Hot week + 0.20 Γ— Breakout.

  • Same-day multiplier = stars 1d Γ· max(1, stars 7d Γ· 7)
  • Weekly multiplier = stars 7d Γ· max(1, stars 30d Γ· 30 Γ— 7)
  • Fortnight multiplier = stars 14d Γ· max(1, stars 90d Γ· 90 Γ— 14)
  • Hot today = clamp(70 Γ— log-scale(stars 1d, 1000) + 30 Γ— breakout-scale(same-day, 4))
  • Hot week = clamp(75 Γ— log-scale(stars 7d, 5000) + 25 Γ— breakout-scale(weekly, 3))
  • Breakout = clamp(35 Γ— breakout-scale(same-day, 4) + 40 Γ— breakout-scale(weekly, 3) + 25 Γ— breakout-scale(fortnight, 2.5))
DateStarsStars 1dStars 7dStars 14dStars 30dStars 90dSame-day multiplierWeekly multiplierFortnight multiplierHot todayHot weekBreakoutStored score

Reliability score

Weekly average

100500
Full metrics details

Derived from the displayed continuity, closure, shipping, liveness, and support-burden components.

Javascript Algorithms

Derived from the displayed continuity, closure, shipping, liveness, and support-burden components.

40 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.30 Γ— Continuity + 0.30 Γ— Closure + 0.20 Γ— Shipping + 0.10 Γ— Liveness + 0.10 Γ— Support burden.

  • Continuity = 35% active ratio 90d + 20% active ratio 30d + 15% PR efficiency 90d + 10% PR efficiency 30d + 10% liveness + 10% observed-history coverage
  • Closure = 55% PR merge efficiency 90d + 45% issue close efficiency 90d
  • Shipping = 100 Γ— (20% Γ— release ratio 30d + 30% Γ— release ratio 90d + 50% Γ— release ratio 180d); ratios are releases Γ· 2, 6, and 12, capped at 1
  • Support burden = 100 βˆ’ 2 Γ— open issues per 1,000 stars
  • Liveness = 100 Γ— exp(βˆ’pushed days ago Γ· 120)

Stars, issues, pull requests, and releases are daily observations. Pushed-days and license are repository snapshot-derived inputs and are not independent historical GitHub events.

DateIssues openedIssues closedPRs openedPRs mergedReleasesStarsOpen issuesPushed days agoContinuityClosureShippingLivenessSupport burdenLicenseObserved daysMissing daysNeeds healingStored score
The Algorithms Python

Derived from the displayed continuity, closure, shipping, liveness, and support-burden components.

80 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.30 Γ— Continuity + 0.30 Γ— Closure + 0.20 Γ— Shipping + 0.10 Γ— Liveness + 0.10 Γ— Support burden.

  • Continuity = 35% active ratio 90d + 20% active ratio 30d + 15% PR efficiency 90d + 10% PR efficiency 30d + 10% liveness + 10% observed-history coverage
  • Closure = 55% PR merge efficiency 90d + 45% issue close efficiency 90d
  • Shipping = 100 Γ— (20% Γ— release ratio 30d + 30% Γ— release ratio 90d + 50% Γ— release ratio 180d); ratios are releases Γ· 2, 6, and 12, capped at 1
  • Support burden = 100 βˆ’ 2 Γ— open issues per 1,000 stars
  • Liveness = 100 Γ— exp(βˆ’pushed days ago Γ· 120)

Stars, issues, pull requests, and releases are daily observations. Pushed-days and license are repository snapshot-derived inputs and are not independent historical GitHub events.

DateIssues openedIssues closedPRs openedPRs mergedReleasesStarsOpen issuesPushed days agoContinuityClosureShippingLivenessSupport burdenLicenseObserved daysMissing daysNeeds healingStored score
The Algorithms Java

Derived from the displayed continuity, closure, shipping, liveness, and support-burden components.

180 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.30 Γ— Continuity + 0.30 Γ— Closure + 0.20 Γ— Shipping + 0.10 Γ— Liveness + 0.10 Γ— Support burden.

  • Continuity = 35% active ratio 90d + 20% active ratio 30d + 15% PR efficiency 90d + 10% PR efficiency 30d + 10% liveness + 10% observed-history coverage
  • Closure = 55% PR merge efficiency 90d + 45% issue close efficiency 90d
  • Shipping = 100 Γ— (20% Γ— release ratio 30d + 30% Γ— release ratio 90d + 50% Γ— release ratio 180d); ratios are releases Γ· 2, 6, and 12, capped at 1
  • Support burden = 100 βˆ’ 2 Γ— open issues per 1,000 stars
  • Liveness = 100 Γ— exp(βˆ’pushed days ago Γ· 120)

Stars, issues, pull requests, and releases are daily observations. Pushed-days and license are repository snapshot-derived inputs and are not independent historical GitHub events.

DateIssues openedIssues closedPRs openedPRs mergedReleasesStarsOpen issuesPushed days agoContinuityClosureShippingLivenessSupport burdenLicenseObserved daysMissing daysNeeds healingStored score
cp-algorithms

Derived from the displayed continuity, closure, shipping, liveness, and support-burden components.

40 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.30 Γ— Continuity + 0.30 Γ— Closure + 0.20 Γ— Shipping + 0.10 Γ— Liveness + 0.10 Γ— Support burden.

  • Continuity = 35% active ratio 90d + 20% active ratio 30d + 15% PR efficiency 90d + 10% PR efficiency 30d + 10% liveness + 10% observed-history coverage
  • Closure = 55% PR merge efficiency 90d + 45% issue close efficiency 90d
  • Shipping = 100 Γ— (20% Γ— release ratio 30d + 30% Γ— release ratio 90d + 50% Γ— release ratio 180d); ratios are releases Γ· 2, 6, and 12, capped at 1
  • Support burden = 100 βˆ’ 2 Γ— open issues per 1,000 stars
  • Liveness = 100 Γ— exp(βˆ’pushed days ago Γ· 120)

Stars, issues, pull requests, and releases are daily observations. Pushed-days and license are repository snapshot-derived inputs and are not independent historical GitHub events.

DateIssues openedIssues closedPRs openedPRs mergedReleasesStarsOpen issuesPushed days agoContinuityClosureShippingLivenessSupport burdenLicenseObserved daysMissing daysNeeds healingStored score
doocs/leetcode

Derived from the displayed continuity, closure, shipping, liveness, and support-burden components.

30 observed daily rows. Missing days are not fabricated.

Per-day formula: 0.30 Γ— Continuity + 0.30 Γ— Closure + 0.20 Γ— Shipping + 0.10 Γ— Liveness + 0.10 Γ— Support burden.

  • Continuity = 35% active ratio 90d + 20% active ratio 30d + 15% PR efficiency 90d + 10% PR efficiency 30d + 10% liveness + 10% observed-history coverage
  • Closure = 55% PR merge efficiency 90d + 45% issue close efficiency 90d
  • Shipping = 100 Γ— (20% Γ— release ratio 30d + 30% Γ— release ratio 90d + 50% Γ— release ratio 180d); ratios are releases Γ· 2, 6, and 12, capped at 1
  • Support burden = 100 βˆ’ 2 Γ— open issues per 1,000 stars
  • Liveness = 100 Γ— exp(βˆ’pushed days ago Γ· 120)

Stars, issues, pull requests, and releases are daily observations. Pushed-days and license are repository snapshot-derived inputs and are not independent historical GitHub events.

DateIssues openedIssues closedPRs openedPRs mergedReleasesStarsOpen issuesPushed days agoContinuityClosureShippingLivenessSupport burdenLicenseObserved daysMissing daysNeeds healingStored score

You can compare trekhleb/javascript-algorithms with established alternatives that cover similar learning goals from different angles.

Project Repo Adoption confidence (~6mo) PRs merged (~6mo) Star growth (~6mo)
javascript-algorithms https://github.com/trekhleb/javascript-algorithms metrics pending 0 metrics pending
The Algorithms Python https://github.com/TheAlgorithms/Python metrics pending 0 metrics pending
The Algorithms Java https://github.com/TheAlgorithms/Java metrics pending 0 0
The Algorithms JavaScript https://github.com/TheAlgorithms/Javascript metrics pending 0 metrics pending
cp-algorithms https://github.com/cp-algorithms/cp-algorithms metrics pending 0 metrics pending
doocs/leetcode https://github.com/doocs/leetcode metrics pending 0 0

You should pick The Algorithms Python as the best overall alternative because you get very broad coverage plus a mature contribution pattern that supports long-term study depth.

Conclusion

You get strong value from trekhleb/javascript-algorithms when your team needs a JavaScript-first, explanation-backed algorithm reference for learning and interview prep. You trade away production integration in exchange for clarity and educational structure. Your most important engineering takeaway is to treat this repository as a repeatable practice system, anchored in the official GitHub repository, ongoing issues, and discussions.

Join the conversation

Reviews Β· Questions Β· Posts

Share what you know about javascript-algorithms β€” write a review from your real experience, ask an implementation question, or publish a post about how you use it.

Share your experience

Write or update your review

Explain what worked, what broke down, and what another team should know before adopting javascript-algorithms.

Write your review now β€” it saves locally and publishes automatically after you sign in.

Rating
Positive attributes
Negative attributes

Project Q&A

Questions and answers

Browse implementation threads tied directly to trekhleb/javascript-algorithms. Each question links through to the full answer page.

Q&A No threads yet

Be the first to ask how teams run javascript-algorithms in production. Every question you post becomes a durable, searchable answer page other developers can find.

Ask the first question

Related posts

Posts tagged with the same topics

These posts come from the same topic surface as this repo, so readers can move from project evaluation into practical writeups and migration notes without leaving context.

Posts No topic-linked posts yet

Share how your team uses javascript-algorithms β€” a migration note, an architecture writeup, or a comparison. Your post reaches everyone browsing these same topics.

Write the first post
Get a weekly email with the hottest new projects in the JavaScript and Javascript Algorithms world.
No Spam. Unsubscribe easily at any time.

Copyright 2018-2026 Awesome Open Source.  All rights reserved.