MCPcopy Create free account
hub / github.com/WallBreaker2/op / EditDistance

Function EditDistance

tests/test_support.cpp:214–229  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

212}
213
214size_t EditDistance(const std::wstring &lhs, const std::wstring &rhs) {
215 std::vector<size_t> prev(rhs.size() + 1);
216 std::vector<size_t> curr(rhs.size() + 1);
217 for (size_t j = 0; j <= rhs.size(); ++j)
218 prev[j] = j;
219
220 for (size_t i = 0; i < lhs.size(); ++i) {
221 curr[0] = i + 1;
222 for (size_t j = 0; j < rhs.size(); ++j) {
223 const size_t cost = lhs[i] == rhs[j] ? 0 : 1;
224 curr[j + 1] = std::min(std::min(curr[j] + 1, prev[j + 1] + 1), prev[j] + cost);
225 }
226 prev.swap(curr);
227 }
228 return prev[rhs.size()];
229}
230
231std::wstring GetTempBmpPath(const wchar_t *file_name) {
232 wchar_t temp_path[MAX_PATH] = {0};

Callers 1

ExpectHelloWorldDigitsFunction · 0.85

Calls 1

sizeMethod · 0.45

Tested by

no test coverage detected