On Nov 13, 9:28 am, [EMAIL PROTECTED] wrote: > I am working on an implementation of the Longest Common Subsequence > problem (as I understand it, this problem can be used in spell > checking type activities) and have used this site to understand the > problem and its solution: > > http://en.wikibooks.org/wiki/Algorithm_implementation/Strings/Longest... > > For those that understand algorithms and can talk Python, I want to > convert the Python code in the section "Reading out all LCSs" into C++ > code but I don't understand some of the syntax. Can anyone give me a > hand? > > Here is the code from that section, but is probably of little use > without understanding the entire problem setup given at the site > above: > > def backTrackAll(C, X, Y, i, j): > if i == 0 or j == 0: > return set([""]) > elif X[i-1] == Y[j-1]: > return set([Z + X[i-1] for Z in backTrackAll(C, X, Y, i-1, > j-1)]) > else: > R = set() > if C[i][j-1] >= C[i-1][j]: > R.update(backTrackAll(C, X, Y, i, j-1)) > if C[i-1][j] >= C[i][j-1]: > R.update(backTrackAll(C, X, Y, i-1, j)) > return R > > Thanks!
You might try Shed Skin: http://sourceforge.net/projects/shedskin/ It's been a while since I did C++. I would recommend going through a basic C++ tutorial. I'm pretty sure the equivalence operators are almost the same. You'll likely need to declare the types for the arguments passed into the function as well. I think lists are called arrays in C++. I don't know what the "set" equivalent is though. Mike -- http://mail.python.org/mailman/listinfo/python-list