Agent skill

Computer Science Algorithms

by pproenca in pproenca/dot-skills

Choosing or implementing an algorithm or data structure — asymptotic complexity, data-structure selection, sorting & searching, dynamic programming, graph algorithms, divide & conquer, greedy…

MITAuto-check passedDevelopment

Install Computer Science Algorithms

skills CLI
$ npx skills add pproenca/dot-skills --skill computer-science-algorithms -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install pproenca/dot-skills computer-science-algorithms --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/pproenca/dot-skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/skills/.experimental/computer-science-algorithms .claude/skills/computer-science-algorithms && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
computer-science-algorithms
GitHub stars
214
Token cost
~3.3k tokens
SKILL.md length
886 words
Files
56 (incl. references, assets)
Skills in repo
182
Repo updated
First seen
Licence
MIT

At a glance

Choosing or implementing an algorithm or data structure — asymptotic complexity, data-structure selection, sorting & searching, dynamic programming, graph algorithms, divide & conquer, greedy…

  • Works in 9 steps: Asymptotic Complexity & Algorithm… → Data Structure Selection (CRITICAL) → Sorting & Searching (HIGH) → …
  • Tasks involving whats the right algorithm for…
  • SKILL.md covers When to Apply, Rule Categories By Priority, Quick Reference and How to Use, plus 2 more sections
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Computer Science Algorithms is an agent skill from pproenca/dot-skills. Choosing or implementing an algorithm or data structure — asymptotic complexity, data-structure selection, sorting & searching, dynamic programming, graph algorithms, divide & conquer, greedy algorithms, string/sequence algorithms, and the at-scale toolbox (Bloom filters, HyperLogLog, Count-Min Sketch, reservoir sampling, consistent hashing, external merge sort, Aho-Corasick, MinHash/LSH). Trigger on tasks involving "what's the right algorithm for…", performance-critical code, code with nested loops over the same…

Its SKILL.md is about 3.3k tokens, which your agent loads only when the skill is triggered. The skill folder holds 58 other files, including reference files and assets (for example `AGENTS.md`, `assets/templates/_template.md` and `metadata.json`).

It sits in Development. The repository describes itself as: A collection of AI agent skills following the Agent Skills open format. The licence is MIT.

When your agent uses it

  • Tasks involving whats the right algorithm for…
  • Performance-critical code
  • Code with nested loops over the same input
  • Recursive solutions

Example prompts

  • “s the right algorithm for…”
  • “how do I do X at scale / on a stream / without enough RAM”
  • “t explicitly mention”
  • “/computer-science-algorithms”

Workflow steps

9 steps, taken from the step headings in SKILL.md.

  1. Asymptotic Complexity & Algorithm Selection (CRITICAL)
  2. Data Structure Selection (CRITICAL)
  3. Sorting & Searching (HIGH)
  4. Dynamic Programming (HIGH)
  5. Graph Algorithms (HIGH)
  6. Divide & Conquer / Recursion (MEDIUM-HIGH)
  7. Greedy Algorithms (MEDIUM)
  8. String & Sequence Algorithms (MEDIUM)
  9. Scale & Probabilistic Algorithms (MEDIUM)

What it can do on your machine

Read from SKILL.md and the folder at commit cf93c57. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    Links to these hosts (documentation or services it may open):

    • cp-algorithms.com
    • usaco.guide

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Computer Science Algorithms loads about 3.3k tokens when it runs, and up to ~40k if it reads all its reference files. Until then it costs about 205 tokens; SKILL.md has 886 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~205
When it runs · the whole SKILL.md, loaded when a task matches
~3.3k
With references · SKILL.md plus every file in references/, read only if the agent opens them
~40k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from pproenca/dot-skills at commit cf93c57, republished under its MIT licence (© pproenca). 886 words, ~3,265 tokens.

Download SKILL.mdSave it as .claude/skills/computer-science-algorithms/SKILL.md (or your agent's skills folder). This skill also uses 55 other files; get the full folder from GitHub.
name
computer-science-algorithms
description
Choosing or implementing an algorithm or data structure — asymptotic complexity, data-structure selection, sorting & searching, dynamic programming, graph algorithms, divide & conquer, greedy algorithms, string/sequence algorithms, and the at-scale toolbox (Bloom filters, HyperLogLog, Count-Min Sketch, reservoir sampling, consistent hashing, external merge sort, Aho-Corasick, MinHash/LSH). Trigger on tasks involving "what's the right algorithm for…", performance-critical code, code with nested loops over the same input, recursive solutions, shortest-path / scheduling / matching / DP problems, code review for accidental O(n²) blowup, and any "how do I do X at scale / on a stream / without enough RAM" question — even if the user doesn't explicitly mention "algorithm" or "complexity."

Community Classical Computer Science Algorithms Best Practices

A practitioner-oriented reference for choosing and implementing classical algorithms and data structures correctly. Organized by execution-lifecycle impact: the earliest decisions (asymptotic class, data-structure choice) cascade through everything else, so the rules near the top of the table matter most.

Scope: the patterns that show up in everyday production code review, reasonable interview / contest problems, and the at-scale toolbox (sketches, streaming, distributed primitives) — not an exhaustive cover of CLRS. Topics intentionally outside the current version: network flow, modular arithmetic, Bellman-Ford and Floyd-Warshall as standalone rules, SCC (Tarjan/Kosaraju), computational geometry, FFT, Manacher / Z-function as standalone rules. They're flagged inline in the relevant rules.

Distilled from CLRS (Introduction to Algorithms, 4th ed.), Sedgewick & Wayne (Algorithms, 4th ed., Princeton), Skiena's Algorithm Design Manual, Laaksonen's Competitive Programmer's Handbook, cp-algorithms.com, and the USACO Guide.

When to Apply

Use these rules when:

  • Choosing an algorithm or data structure for a new problem ("what's the right way to do X?")
  • Reviewing code for hidden O(n²) blowup — repeated in-checks on lists, pop(0) on lists, string concatenation in loops, naive substring search
  • Picking a DP state or recurrence, before writing the memoization
  • Modeling a problem as a graph (BFS vs Dijkstra vs topological sort)
  • Refactoring brute force / naive solutions that work on toy inputs but time out at scale
  • Deciding whether greedy applies, or whether DP / branch-and-bound is required

Rule Categories By Priority

#CategoryPrefixImpactWhy it cascades
1Asymptotic Complexity & Algorithm Selectioncomp-CRITICALWrong O() class makes every other optimization irrelevant
2Data Structure Selectionds-CRITICALThe container determines which operations are cheap
3Sorting & Searchingsrch-HIGHFoundation for greedy, two-pointer, sweep-line, binary-search-on-the-answer
4Dynamic Programmingdp-HIGHExponential → polynomial transformations
5Graph Algorithmsgraph-HIGHNetworks, dependencies, routing, scheduling all reduce to graphs
6Divide & Conquer / Recursiondivide-MEDIUM-HIGHLogarithmic-factor speedups; stack-depth and recurrence traps
7Greedy Algorithmsgreedy-MEDIUMFast when correct, silently wrong when not
8String & Sequence Algorithmsstr-MEDIUMPattern matching, parsing, substring queries
9Scale & Probabilistic Algorithmsscale-MEDIUMSketches, streaming, distributed primitives — situational, decisive when they apply

Quick Reference

1. Asymptotic Complexity & Algorithm Selection (CRITICAL)
2. Data Structure Selection (CRITICAL)
3. Sorting & Searching (HIGH)
4. Dynamic Programming (HIGH)
Show full SKILL.md (353 more words)Show less
5. Graph Algorithms (HIGH)
6. Divide & Conquer / Recursion (MEDIUM-HIGH)
7. Greedy Algorithms (MEDIUM)
8. String & Sequence Algorithms (MEDIUM)
9. Scale & Probabilistic Algorithms (MEDIUM)

The "unusual but valuable at scale" toolbox — sketches that trade tiny accuracy loss for orders-of-magnitude memory wins, streaming primitives for inputs that don't fit in RAM, and distributed structures that survive sharding changes.

How to Use

Start with the category that matches the question:

  • "What's the right algorithm for n = 10⁶?" → comp- (input-bound)
  • "I'm looking things up in a list inside a loop" → ds-hash-map-for-keyed-lookup or comp-watch-for-quadratic-blowup-from-membership-in-list
  • "My recursion is slow" → dp-memoize-overlapping-subproblems and comp-derive-recurrences-via-master-theorem
  • "Shortest path / connectivity / ordering tasks" → graph-
  • "Choose items to maximize value" → start with greedy-prove-exchange-argument-before-using; fall back to dp-knapsack-pattern
  • "Find / match strings" → str-
  • "Memory is the constraint, not time" / "Sample / count / deduplicate at scale" / "Sharding" → scale-

Code examples are in Python (most readable across audiences). The reasoning generalizes to any language — equivalent stdlib primitives are listed where they differ.

Reference Files

FileDescription
references/_sections.mdCategory definitions and ordering
assets/templates/_template.mdTemplate for new rules
metadata.jsonVersion and reference information
AGENTS.mdAuto-built TOC navigation
  • complexity-optimizer — Static analysis that finds the patterns these rules diagnose

© pproenca, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 55 other files (references, assets) in skills/.experimental/computer-science-algorithms of pproenca/dot-skills.

  • SKILL.md
  • AGENTS.md
  • assets/templates/_template.md
  • metadata.json
  • references/_sections.md
  • references/comp-amortize-instead-of-worst-casing.md
  • references/comp-derive-recurrences-via-master-theorem.md
  • references/comp-pick-algorithm-class-from-input-bound.md
  • references/comp-prefer-iterative-builders-over-string-concatenation.md
  • references/comp-treat-space-complexity-as-first-class.md
  • references/comp-watch-for-quadratic-blowup-from-membership-in-list.md
  • references/divide-meet-in-the-middle-for-subset-problems.md
  • references/divide-merge-sort-pattern-for-counting-inversions.md
  • references/divide-quickselect-vs-quicksort-partitioning.md
  • references/divide-watch-recursion-depth-and-stack.md
  • references/dp-bitmask-for-small-set-states.md
  • references/dp-define-state-precisely.md
  • references/dp-knapsack-pattern.md
  • … and 38 more

Open the folder on GitHubat commit cf93c57

Compare with similar skills

Computer Science Algorithms next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Computer Science Algorithms compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Computer Science Algorithms this skillpproenca/dot-skills214—~3.3kAutomated safety check: PassMIT
Finishing a Development Branchobra/superpowers296k5 repos~1.9kAutomated safety check: PassMIT
Typescript Advanced Typesrolling-scopes/rsschool-app10k24 repos~4.2kAutomated safety check: PassMPL-2.0
PR Babysitteropeninterpreter/openinterpreter69k3 repos~4.2kAutomated safety check: PassApache-2.0
Code Review ChecklistshareAI-lab/learn-claude-code78k5 repos~1.1kAutomated safety check: PassMIT
Greplooponyx-dot-app/onyx32k4 repos~3.3kAutomated safety check: PassMIT

Similar skills

  • Walks the last step of a branch: confirm tests pass, detect the git environment, ask how to integrate, carry out your choice and clean up the worktree.

    296k GitHub starsUsed in 5 repos~1.9k tokens
    DevelopmentAuto-check passed
  • Typescript Advanced Types

    rolling-scopes/rsschool-app

    Master TypeScript's advanced type system including generics, conditional types, mapped types, template literals, and utility types for building type-safe applications.

    10k GitHub starsUsed in 24 repos~4.2k tokens
    DevelopmentAuto-check passed
  • PR Babysitter

    openinterpreter/openinterpreter

    Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.

    69k GitHub starsUsed in 3 repos~4.2k tokens
    DevelopmentAuto-check passed
  • Code Review Checklist

    shareAI-lab/learn-claude-code

    Reviews code against a five-part checklist covering security, correctness, performance, maintainability and testing, and reports findings in a fixed format.

    78k GitHub starsUsed in 5 repos~1.1k tokens
    DevelopmentAuto-check passed
  • Greploop

    onyx-dot-app/onyx

    Iteratively improves a PR (GitHub), MR (GitLab), or shelved changelist (Perforce) until Greptile gives it a 5/5 confidence score with zero unresolved comments.

    32k GitHub starsUsed in 4 repos~3.3k tokens
    DevelopmentAuto-check passed
  • Guidelines

    akash-network/node

    Behavioral guidelines to reduce common LLM coding mistakes. An agent skill from akash-network/node.

    1.1k GitHub starsUsed in 22 repos~577 tokens
    DevelopmentAuto-check passed

More from pproenca/dot-skills

All 182 skills in this repo
  • Audio Voice Recovery

    pproenca/dot-skills

    Audio forensics and voice recovery guidelines for CSI-level audio analysis.

    214 GitHub stars~3.3k tokensUpdated 1 mo ago
    Auto-check passed
  • Codemod React Pipeline

    pproenca/dot-skills

    Guided, scripted pipeline for running JSX/TSX/React codemods safely across large legacy codebases.

    214 GitHub stars~1.6k tokensUpdated 1 mo ago
    Auto-check passed
  • Dev Rfc

    pproenca/dot-skills

    Create well-structured RFCs and technical proposals for software projects.

    214 GitHub stars~3.8k tokensUpdated 1 mo ago
    Auto-check passed
  • Dx Harness

    pproenca/dot-skills

    Developer-experience friction auditing and fixing — slow onboarding, repeated manual setup steps, missing bootstrap/reset/seed scripts, undiscoverable conventions.

    214 GitHub stars~1.5k tokensUpdated 1 mo ago
    Auto-check passed
  • Language Spec Author

    pproenca/dot-skills

    Turn a rough idea for a language into a complete, implementable specification — a DSL, query, config/data, template, or protocol language — by interviewing the author dimension by dimension until…

    214 GitHub stars~2.4k tokensUpdated 1 mo ago
    Auto-check passed
  • Python Pep Author

    pproenca/dot-skills

    Drafting Python Enhancement Proposals (PEPs) — proposing a Python language feature, a standard library change, an interoperability standard, or an informational/process document for the Python…

    214 GitHub stars~2.1k tokensUpdated 1 mo ago
    Auto-check passed

Categories

Questions about Computer Science Algorithms

What does Computer Science Algorithms do?

Choosing or implementing an algorithm or data structure — asymptotic complexity, data-structure selection, sorting & searching, dynamic programming, graph algorithms, divide & conquer, greedy…. Computer Science Algorithms is an agent skill from pproenca/dot-skills. Choosing or implementing an algorithm or data structure — asymptotic complexity, data-structure selection, sorting & searching, dynamic programming, graph algorithms, divide & conquer, greedy algorithms, string/sequence algorithms, and the at-scale toolbox (Bloom filters, HyperLogLog, Count-Min Sketch, reservoir sampling, consistent hashing, external merge sort, Aho-Corasick, MinHash/LSH).

When should I use Computer Science Algorithms?

Computer Science Algorithms fits situations like: tasks involving whats the right algorithm for…; performance-critical code; code with nested loops over the same input; recursive solutions.

How do I install Computer Science Algorithms in Claude Code?

Run `npx skills add pproenca/dot-skills --skill computer-science-algorithms -a claude-code`. Or copy the skill folder (skills/.experimental/computer-science-algorithms in pproenca/dot-skills) into .claude/skills/computer-science-algorithms in your project. Claude Code loads it when a task matches its description.

How do I install Computer Science Algorithms in Codex?

Run `npx skills add pproenca/dot-skills --skill computer-science-algorithms -a codex`. Or copy the skill folder (skills/.experimental/computer-science-algorithms in pproenca/dot-skills) into .agents/skills/computer-science-algorithms in your project. Codex loads it when a task matches its description.

Can I use Computer Science Algorithms in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add pproenca/dot-skills --skill computer-science-algorithms -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/computer-science-algorithms, .gemini/skills/computer-science-algorithms, .github/skills/computer-science-algorithms and .opencode/skills/computer-science-algorithms in your project.

What does Computer Science Algorithms need to run?

SKILL.md names no scripts, command-line tools or credentials: Computer Science Algorithms is instructions for the agent only.

Does Computer Science Algorithms access the network?

SKILL.md names 2 domains. As links in the text: cp-algorithms.com and usaco.guide. This is read from the text; nothing was executed.

Is Computer Science Algorithms safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Computer Science Algorithms use?

Computer Science Algorithms is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Computer Science Algorithms use?

About 3.3k tokens (SKILL.md is roughly 13k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 37k tokens, read only when the agent opens those files.

What are the alternatives to Computer Science Algorithms?

Skills that share tags, products or a category with Computer Science Algorithms: Finishing a Development Branch (obra/superpowers, 296k stars), Typescript Advanced Types (rolling-scopes/rsschool-app, 10k stars), PR Babysitter (openinterpreter/openinterpreter, 69k stars) and Code Review Checklist (shareAI-lab/learn-claude-code, 78k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Computer Science Algorithms?

pproenca (a GitHub user) maintains it in pproenca/dot-skills, which has 214 GitHub stars. The repository holds 182 skills in this directory. The repository was last updated on August 15, 2026.

Source: pproenca/dot-skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.