สมมติว่าเรามีสตริงที่เก่ากว่าและสตริงที่ใหม่กว่า ทั้งสองแสดงเวอร์ชันแพ็คเกจซอฟต์แวร์ในรูปแบบ "major.minor.patch" เราต้องตรวจสอบว่าเวอร์ชันที่ใหม่กว่านั้นใหม่กว่าเวอร์ชันเก่าหรือไม่
ดังนั้น หากอินพุตเหมือนเก่า ="7.2.2", ใหม่กว่า ="7.3.1" ผลลัพธ์จะเป็น True
เพื่อแก้ปัญหานี้ เราจะทำตามขั้นตอนเหล่านี้ -
- เก่ากว่า :=รายการหลัก รอง รหัสแพทช์ของเก่า
- ใหม่กว่า:=รายการหลัก รอง รหัสแพทช์ของใหม่กว่า
- สำหรับฉันอยู่ในช่วงขนาดของรายการที่เก่ากว่า ทำ
- :=เก่ากว่า[i], n :=ใหม่กว่า[i]
- ถ้า n> o แล้ว
- คืนค่า True
- มิฉะนั้น เมื่อ n
- คืนค่าเท็จ
- ถ้า n> o แล้ว
ให้เราดูการใช้งานต่อไปนี้เพื่อความเข้าใจที่ดีขึ้น -
ตัวอย่าง
class Solution: def solve(self, older, newer): older = older.split('.') newer=newer.split('.') for o, n in zip(older, newer): if int(n)>int(o): return True elif int(n)<int(o): return False return False ob = Solution() older = "7.2.2" newer = "7.3.1" print(ob.solve(older, newer))
อินพุต
"7.2.2", "7.3.1"
ผลลัพธ์
True