Please solve the programming task below using a self-contained code snippet in a markdown code block.

Given a positive integer n, you can apply one of the following operations:

If n is even, replace n with n / 2.
If n is odd, replace n with either n + 1 or n - 1.

Return the minimum number of operations needed for n to become 1.
 
Please complete the following python code precisely:
```python
class Solution:
    def integerReplacement(self, n: int) -> int:
```