{"id":20978784,"url":"https://github.com/holmanb/levenshtein","last_synced_at":"2026-05-19T11:42:49.109Z","repository":{"id":111428316,"uuid":"427394385","full_name":"holmanb/levenshtein","owner":"holmanb","description":"edit distance algos: levenshtien, damerau, and hamming code","archived":false,"fork":false,"pushed_at":"2021-11-29T19:57:33.000Z","size":3,"stargazers_count":1,"open_issues_count":0,"forks_count":0,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-01-20T06:19:02.939Z","etag":null,"topics":["damerau-levenshtein-distance","hamming-distance","levenshtein-distance","rust"],"latest_commit_sha":null,"homepage":"","language":"Rust","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/holmanb.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-11-12T14:47:44.000Z","updated_at":"2022-11-30T17:48:00.000Z","dependencies_parsed_at":null,"dependency_job_id":"129e02fd-3d8e-4b64-a26d-ee6e657085cb","html_url":"https://github.com/holmanb/levenshtein","commit_stats":null,"previous_names":[],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holmanb%2Flevenshtein","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holmanb%2Flevenshtein/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holmanb%2Flevenshtein/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/holmanb%2Flevenshtein/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/holmanb","download_url":"https://codeload.github.com/holmanb/levenshtein/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":243382783,"owners_count":20282007,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["damerau-levenshtein-distance","hamming-distance","levenshtein-distance","rust"],"created_at":"2024-11-19T05:07:38.105Z","updated_at":"2025-12-29T11:50:19.142Z","avatar_url":"https://github.com/holmanb.png","language":"Rust","funding_links":[],"categories":[],"sub_categories":[],"readme":"LEVENSHTEIN\n-----------\n\nThis project aims to correctly implement various edit distance algorithms in\nthe Rust programming language.\n\nEdit distance is the minimum number of editing operations required to transform\none string into another. Multiple different edit distance categories exist.\nThese edit distances differ in supported operations and algorithmic complexity.\n\n# Operations:\n\n### Substitution\nReplace one symbol with another.\n\nExample:\n```\nEleghant -\u003e Elephant\n\nEleghant\n|||R||||\nElephant\n```\nThe letter 'g' is substituted with the letter 'p' in a single operation.\n\n\n### Deletion\nRemove one symbol.\n\nExample:\n```\nElephhant -\u003e Elephant\n\nElephhant\n||||D||||\nElep hant\n```\n\nThe second letter 'h' is removed in a single operation.\n\n\n### Insertion\nAdd one symbol.\n\nExample:\n```\nElehant -\u003e Elephant\n\nEle hant\n|||I||||\nElephant\n```\n\nThe letter 'p' is added in a single operation.\n\n\n### Transposition\nSwap two adjacent symbols in the string.\n\nExample:\n```\nElehpant -\u003e Elephant\n\nElehpant\n|||SS|||\nElephant\n```\n\nThe letters 'h' and 'p' are swapped in a single operation.\n\n\n# Edit Distance Types:\n\n\n### Hamming\n\nAllowed Operations:\n\n- Substitution\n\nNote: strings must be of same length, as substitution does not change length\n\n\n### Levenshtein\n\nAllowed Operations:\n\n- Substitution\n- Deletion\n- Insertion\n\n\n### Damerau-Levenshtein\n\nAllowed Operations:\n\n- Substitution\n- Deletion\n- Insertion\n- Substitution\n\n\n### Longest common subsequence (not implemented)\n\nAllowed Operations:\n- Deletion\n- Insertion\n\n\n### Jaro (not implemented)\n\nAllowed Operations:\n- Transposition\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholmanb%2Flevenshtein","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fholmanb%2Flevenshtein","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fholmanb%2Flevenshtein/lists"}