[Leetcode] 0125. Valid Palindrome

Explore diverse LeetCode solutions in Python, C++, JavaScript, SQL, and TypeScript. Ideal for interview prep, learning, and code practice in multiple programming languages. Github Repo Link

內容目錄

Easy


A phrase is a palindrome if, after converting all uppercase letters into lowercase letters and removing all non-alphanumeric characters, it reads the same forward and backward. Alphanumeric characters include letters and numbers.

Given a string s, return true if it is a palindrome, or false otherwise.

 

Example 1:

Input: s = "A man, a plan, a canal: Panama"
Output: true
Explanation: "amanaplanacanalpanama" is a palindrome.

Example 2:

Input: s = "race a car"
Output: false
Explanation: "raceacar" is not a palindrome.

Example 3:

Input: s = " "
Output: true
Explanation: s is an empty string "" after removing non-alphanumeric characters.
Since an empty string reads the same forward and backward, it is a palindrome

Constraints:

  • 1 <= s.length <= 2 * 105
  • s consists only of printable ASCII characters.

Python

				
					from typing import List


class Solution:
    def maxArea(self, height: List[int]) -> int:
        maxSum = 0
        left, right = 0, len(height) - 1
        while left < right:
            maxSum = max(maxSum, (right - left) *
                         min(height[left], height[right]))
            if height[left] < height[right]:
                left += 1
            else:
                right -= 1

        return maxSum


Height = [1, 8, 6, 2, 5, 4, 8, 3, 7]

print(Solution().maxArea(Height))