# LeetCode 7. Reverse Integer Python Medium Algorithm

Recently I've circled back to LeetCode to have some fun with SQL and algorithms questions and am documenting the puzzle solving journey.

This time I reviewed the __7. Reverse Integer Python__ which is a Medium algorithm question. Skip to the bottom for the video session if you'd prefer 😁

###### The Problem

*Given a signed 32-bit integer x, return x with its digits reversed. If reversing x causes the value to go outside the signed 32-bit integer range [-231, 231 - 1], then return 0.*

*Assume the environment does not allow you to store 64-bit integers (signed or unsigned).*

**Example 1:**

**Input****:** x = 123
**Output****:** 321

**Example 2:**

**Input****:** x = -123
**Output****:** -321

**Example 3:**

**Input****:** x = 120
**Output****:** 21

###### My Thought Process

There are 3 things I believe we need to solve for here.

Reverse the Integer by casting as a string. We also need to account for negative values so I cast an absolute value of the Integer as a string

Only 32 bit Integers are allowed so add a validation check

Determine if the Integer was negative to begin with. If so, make it negative when returned

###### My Code

Using the 3 steps above I put together the code below which solved the puzzle in the top 94.6% responses.

```
class Solution:
def reverse(self, x: int) -> int:
#convert input into string
ostring = str(abs(x))[::-1]
#check if 32bit
if int(ostring) > 2**(31):
ostring = '0'
#next check if orig was negative
elif x < 0:
ostring = '-' + ostring
return(int(ostring))
```

Maybe you came up with a different method? Drop it in the comments below.

Thanks for checking out this blog post. If you found this post helpful please consider __donating____ __via __PayPal____.__ Any contribution is appreciated!