Every premium and members-only resource for $9.99/month, as a no-commitment subscription. See the plans

PalateKit

Menu

Request a resource

Describe the resource you are missing in one sentence. We will email you when it is published.

0 / 280

Unlock PalateKit

Unlock everything

Plan

Paying means accepting our terms of sale.

Secure payment by Stripe. Receipts and invoices sent by email.

Welcome back

Sign in to install, download or save this resource. A free account is enough for free resources.

Choosing algorithms and data structures v1.0.0

Use this resource to choose or implement an algorithm and data structure suited to the input size

New

  • 561 downloads
  • 193 likes
  • 130 saves

Free

Install with the CLI

In a terminal, from the folder you want:

npx --yes palatekit@latest install algorithm-selection-complexity

With no option, the skill goes to ~/.agents/skills/; add --agent claude-code (or codex, cursor…) to target an agent.

First time: connect the CLI with

npx --yes palatekit@latest login

The agent picks the algorithm and data structure that fit your problem against rules covering asymptotic complexity, searching, sorting, dynamic programming, graphs and tools such as Bloom filters or HyperLogLog. It flags hidden quadratic blowups. You get a choice grounded in the real data size.

Mostly picked by

Updated November 2, 2026

Card for the “Choosing algorithms and data structures” skill

Details

Generates with
Your agent's model
Licence
MIT

Similar resources

View all

What you get

  • references/: cards on complexity, choosing the algorithm class and space
  • references/: cards on divide and conquer, quickselect and meet-in-the-middle

Good fit for

  • A nested loop over the same list slows as data grows
  • You must count distinct items on a stream too large for memory

Not for

    Tags

    • algorithms
    • complexity
    • data structures
    • performance
    • sorting

    About

    You say

    “This function compares every order with every other order. Tell me which algorithm and structure get us below quadratic time.”

    Card for the “Choosing algorithms and data structures” skill

    Skill published by pproenca under the MIT license, delivered in its original version.

    Show more

    How to use it

    1. Install the skill in your agent's skills folder
    2. Ask your agent to choose or implement an algorithm and data structure suited to the input size
    3. Review and adjust the result

    Content preview

    Files

    • AGENTS.md13.4 KB
    • assets/templates/_template.md1.3 KB
    • LICENSE1.1 KB
    • metadata.json1.3 KB
    • NOTICE-PALATEKIT.md0.5 KB
    • references/_sections.md3.1 KB
    • references/comp-amortize-instead-of-worst-casing.md2.5 KB
    • references/comp-derive-recurrences-via-master-theorem.md2.1 KB
    • references/comp-pick-algorithm-class-from-input-bound.md1.8 KB
    • references/comp-prefer-iterative-builders-over-string-concatenation.md1.9 KB
    • references/comp-treat-space-complexity-as-first-class.md2.1 KB
    • references/comp-watch-for-quadratic-blowup-from-membership-in-list.md1.7 KB
    • references/divide-meet-in-the-middle-for-subset-problems.md2.5 KB
    • references/divide-merge-sort-pattern-for-counting-inversions.md2.4 KB
    • references/divide-quickselect-vs-quicksort-partitioning.md3 KB
    • references/divide-watch-recursion-depth-and-stack.md2.6 KB
    • references/dp-bitmask-for-small-set-states.md2.7 KB
    • references/dp-define-state-precisely.md2.8 KB
    • references/dp-knapsack-pattern.md2.7 KB
    • references/dp-memoize-overlapping-subproblems.md2.4 KB
    • references/dp-prove-optimal-substructure-before-coding.md2.7 KB
    • references/dp-tabulate-when-recursion-depth-or-order-matters.md2.7 KB
    • references/ds-balanced-bst-or-sorted-container-for-range-queries.md2.3 KB
    • references/ds-deque-for-both-end-operations.md2.1 KB
    • references/ds-fenwick-or-segment-tree-for-mutable-range-queries.md2.2 KB
    • references/ds-hash-map-for-keyed-lookup.md2 KB
    • references/ds-heap-for-top-k-and-priority-queues.md2.1 KB
    • references/ds-prefix-sums-for-repeated-range-sums.md2.2 KB
    • references/ds-set-for-uniqueness-and-membership.md2 KB
    • references/ds-union-find-for-dynamic-connectivity.md2.8 KB
    • references/graph-bfs-for-unweighted-shortest-path.md2.9 KB
    • references/graph-detect-cycles-during-dfs.md2.8 KB
    • references/graph-dijkstra-for-non-negative-weights.md2.9 KB
    • references/graph-kruskal-or-prim-for-mst.md3.1 KB
    • references/graph-represent-as-adjacency-list-not-matrix.md2.8 KB
    • references/graph-topological-sort-for-dependency-order.md3.1 KB
    • references/greedy-huffman-and-priority-queue-greedies.md2.7 KB
    • references/greedy-interval-merge-and-sweep-line.md3 KB
    • references/greedy-prove-exchange-argument-before-using.md3 KB
    • references/greedy-sort-by-the-right-key-for-scheduling.md2.9 KB
    • references/scale-aho-corasick-for-multi-pattern-search.md5.1 KB
    • references/scale-bloom-filter-for-probabilistic-membership.md3.3 KB
    • references/scale-consistent-hashing-for-distributed-sharding.md4.3 KB
    • references/scale-count-min-sketch-for-frequency-estimation.md4.2 KB
    • references/scale-external-merge-sort-for-out-of-memory-data.md4.1 KB
    • references/scale-hyperloglog-for-cardinality-estimation.md3.9 KB
    • references/scale-minhash-lsh-for-near-duplicate-detection.md6.2 KB
    • references/scale-reservoir-sampling-for-streams.md4 KB
    • references/srch-binary-search-on-sorted-data.md2.7 KB
    • references/srch-counting-and-radix-sort-for-bounded-integer-keys.md2.3 KB
    • references/srch-quickselect-for-k-th-element.md2.3 KB
    • references/srch-two-pointers-on-sorted-data.md2.4 KB
    • references/srch-use-builtin-sort-not-hand-rolled.md2.3 KB
    • references/str-kmp-or-builtin-find-not-naive-search.md2.6 KB
    • references/str-rolling-hash-for-multiple-substring-comparisons.md2.8 KB
    • references/str-suffix-array-or-automaton-for-substring-queries.md3.2 KB
    • references/str-trie-for-prefix-queries.md3.2 KB
    • SKILL.md13 KB

    Origin and licence

    Listed unmodified

    Author
    pproenca
    Source
    github.com/pproenca/dot-skills/tree/cf93c57cac89d6fc3e4194686000411567f5caf3/skills/.experimental/computer-science-algorithms
    Licence
    MIT

    Notice

    « computer-science-algorithms » (pproenca, MIT) livré dans sa version d'origine : fiche en français et en anglais par PalateKit.

    User reviews

    –

    No ratings yet

    Loading reviews…

    Delete your review?

    Your rating and comment will be removed from the page.