X-Git-Url: https://git.ozlabs.org/?a=blobdiff_plain;f=ccan%2Fedit_distance%2Fedit_distance_rdl.c;fp=ccan%2Fedit_distance%2Fedit_distance_rdl.c;h=9041448402e6b3a232b1c0586a79e10608bf79d6;hb=c16c021735d53348b6f5fe119e35feea85e6638e;hp=4f098cbe57242b29d08a221e2f80d795980eb3e5;hpb=9fdfa56eff5a90cd6f6052b5940b947bc3a704b4;p=ccan diff --git a/ccan/edit_distance/edit_distance_rdl.c b/ccan/edit_distance/edit_distance_rdl.c index 4f098cbe..90414484 100644 --- a/ccan/edit_distance/edit_distance_rdl.c +++ b/ccan/edit_distance/edit_distance_rdl.c @@ -13,6 +13,8 @@ ed_dist edit_distance_rdl(const ed_elem *src, ed_size slen, const ed_elem *tgt, ed_size tlen) { + ed_size i, j; + /* Optimization: Avoid malloc when required rows of distance matrix can * fit on the stack. */ @@ -32,11 +34,11 @@ ed_dist edit_distance_rdl(const ed_elem *src, ed_size slen, /* Initialize row with cost to delete src[0..i-1] */ dist[0] = 0; - for (ed_size i = 1; i <= slen; ++i) { + for (i = 1; i <= slen; ++i) { dist[i] = dist[i - 1] + ED_DEL_COST(src[i - 1]); } - for (ed_size j = 1; j <= tlen; ++j) { + for (j = 1; j <= tlen; ++j) { /* Value for dist[j-2][i-1] (two rows up, one col left). */ /* Note: dist[0] is not initialized when j == 1, var unused. */ ed_dist diagdist1 = prevdist[0]; @@ -51,7 +53,7 @@ ed_dist edit_distance_rdl(const ed_elem *src, ed_size slen, /* Loop invariant: dist[i] is the edit distance between first j * elements of tgt and first i elements of src. */ - for (ed_size i = 1; i <= slen; ++i) { + for (i = 1; i <= slen; ++i) { ed_dist nextdiagdist = dist[i]; if (ED_ELEM_EQUAL(src[i - 1], tgt[j - 1])) {