Skip to content

slight bug in backtrack case #3

@kevinhendricks

Description

@kevinhendricks

Hi Daniel,
Started playing around with this. Very nicely done! You have the first implementation that I have seen that just stores the historic V but not the editing commands themselves (and associated lines added and deleted) which means your approach should have a smaller memory footprint then almost all of the other python implementations.

I did have to make one small change to your backtrack code to get it to work through all of my test cases:

See:

https://github.com/DHDaniel/git-diff-clone/blob/master/src/Differ.py#L88

I had to set that condition to "if d >=0" otherwise my output was missing one line under some tests. With that one change, it all passed with flying colours.

FWIW, you also have a small typo in your write-up pdf that you may want to fix as well:

See page 5:

"For example, at (0,2), after deleting “A” and “B” from string A, we move diagonally to (3,1)"

I think you meant (2,0) not (0,2).

BTW, you did a wonderful job explaining things in your write-up! Much better than the original Myers paper itself (This is the nearly retired professor in me talking) Nicely done!

And finally, Thank you! for choosing the MIT license for your work as it can now help the largest number of opensource projects (including my own Sigil - a cross platform ebook editor).

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions