mirror of
https://github.com/youngyangyang04/leetcode-master.git
synced 2025-07-09 03:34:02 +08:00
加入python版本的双指针解法
This commit is contained in:
@ -288,7 +288,34 @@ class Solution:
|
||||
return s[left:right + 1]
|
||||
|
||||
```
|
||||
> 双指针法:
|
||||
```python
|
||||
class Solution:
|
||||
def longestPalindrome(self, s: str) -> str:
|
||||
|
||||
def find_point(i, j, s):
|
||||
while i >= 0 and j < len(s) and s[i] == s[j]:
|
||||
i -= 1
|
||||
j += 1
|
||||
return i + 1, j
|
||||
|
||||
def compare(start, end, left, right):
|
||||
if right - left > end - start:
|
||||
return left, right
|
||||
else:
|
||||
return start, end
|
||||
|
||||
start = 0
|
||||
end = 0
|
||||
for i in range(len(s)):
|
||||
left, right = find_point(i, i, s)
|
||||
start, end = compare(start, end, left, right)
|
||||
|
||||
left, right = find_point(i, i + 1, s)
|
||||
start, end = compare(start, end, left, right)
|
||||
return s[start:end]
|
||||
|
||||
```
|
||||
## Go
|
||||
|
||||
```go
|
||||
|
Reference in New Issue
Block a user