Massive speed up to QgsStringUtils::levenshteinDistance by using std::vector instead of QVector

This commit is contained in:
Nyall Dawson 2023-03-20 10:45:09 +10:00
parent 68bc918200
commit e04aa7b187

View File

@ -193,13 +193,12 @@ int QgsStringUtils::levenshteinDistance( const QString &string1, const QString &
}
//levenshtein algorithm begins here
QVector< int > col;
col.fill( 0, length2 + 1 );
QVector< int > prevCol;
std::vector< int > col( length2 + 1, 0 );
std::vector< int > prevCol;
prevCol.reserve( length2 + 1 );
for ( int i = 0; i < length2 + 1; ++i )
{
prevCol << i;
prevCol.emplace_back( i );
}
const QChar *s2start = s2Char;
for ( int i = 0; i < length1; ++i )