zdps

dps calculations accounting for overkill (by hmusgrave)

Zdps Alternatives

Similar projects and alternatives to zdps

  • Fibonacci-Sequence

    Application that calculates the number that is located in the selected position. Made with Python and Tkinter library.

  • codility

    1 zdps VS codility

    Codility Lessons (by dsego)

  • InfluxDB

    Power Real-Time Data Analytics at Scale. Get real-time insights from all types of time series data with InfluxDB. Ingest, query, and analyze billions of data points in real-time with unbounded cardinality.

    InfluxDB logo
NOTE: The number of mentions on this list indicates mentions on common posts plus user suggested alternatives. Hence, a higher number means a better zdps alternative or higher similarity.

zdps reviews and mentions

Posts with mentions or reviews of zdps. We have used some of these posts to build our list of alternatives and similar projects. The last one was on 2024-01-15.
  • Dynamic Programming is not Black Magic
    3 projects | news.ycombinator.com | 15 Jan 2024
    I think their point is that naive caching attempts still result in duplicate work, and if you start by viewing the problem recursively then DP is a clever insight allowing you to avoid that duplicate work. You're right; it's not _just_ function calling overhead or anything minor; it often represents major Big-O improvements. I think that's in alignment with what they're saying.

    I like your insight about Fibonacci needing less state than a naive DP would suggest. Diving into that a bit, DP implementations represent a DAG. More importantly, for all the problems that easily fit into DP that DAG has small numbers of "local" connections -- you can partition it into at least O(some_meaningful_dimension) many topologically sorted levels where each level only depends on a small, known, finite number of previous levels (often 1-2), not deeper DAG nodes. A clever choice of order of operations then looks for a min-cut on that graph, proceeding through those levels. Fib has at most O(n) levels and at least O(n) state for naive DP, so a clever implementation has O(n/n)=O(1) state. Edit distance has at most O(n) levels and at least O(n^2) state, so a clever implementation has O(n^2/n)=O(n) state. I did something similar for some DP probability calculation [0], and it reduces state from quadratic to linear.

    Fibonacci is, slightly pedantically, one of the worst algorithms to analyze this way. Only the smallest inputs actually fit in machine integers, and the exponential increase in the size of any bigints involved really puts a damper on a naive Big-O analysis. Fib mod 2^64 (or some biggish prime) fits into the spirit of things better.

    [0] https://github.com/hmusgrave/zdps

Stats

Basic zdps repo stats
1
3
2.3
8 months ago

hmusgrave/zdps is an open source project licensed under GNU Affero General Public License v3.0 which is an OSI approved license.

The primary programming language of zdps is Zig.


Sponsored
SaaSHub - Software Alternatives and Reviews
SaaSHub helps you find the best software and product alternatives
www.saashub.com