Search⌘ K
AI Features

Solution: Compare Version Numbers

Explore how to compare two version strings by splitting them into revision parts and using the two pointers technique for an efficient left-to-right comparison. This lesson helps you implement logic to handle missing revisions as zero and return correct comparison results. You will understand time and space complexity considerations to solve version comparison problems effectively.

Statement

Given two version strings, version1 and version2, compare them. A version string is composed of revisions separated by dots ('.'). Each revision’s value is determined by converting it to an integer, disregarding any leading zeros.

Compare the two version strings by evaluating their revision values from left to right. If one version string contains fewer revisions than the other, treat each missing revision as 0.

Return the result of the comparison as follows:

  • Return 1-1 if version1 is less than version2.

  • Return 11 if version1 is greater than version2.

  • Return 00 if both versions are equal.

Note: Each revision value in version1 and version2 is guaranteed to fit within a 3232-bit integer.

Constraints:

  • 11 \leq version1.length, version2.length ...