suggestions.c: Improve efficiency of levenshtein_distance method (#91835)

This commit is contained in:
Pieter Eendebak 2022-05-02 19:09:35 +02:00 committed by GitHub
parent 341689cb85
commit feb45d0ae9
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
1 changed files with 3 additions and 1 deletions

View File

@ -78,9 +78,11 @@ levenshtein_distance(const char *a, size_t a_size,
// Instead of producing the whole traditional len(a)-by-len(b)
// matrix, we can update just one row in place.
// Initialize the buffer row
size_t tmp = MOVE_COST;
for (size_t i = 0; i < a_size; i++) {
// cost from b[:0] to a[:i+1]
buffer[i] = (i + 1) * MOVE_COST;
buffer[i] = tmp;
tmp += MOVE_COST;
}
size_t result = 0;