# Solving Leetcode Interviews in Seconds with AI: Second Largest Digit in a String


	# Introduction
	In this blog post, we will explore how to solve the LeetCode problem "1796" using AI. LeetCode is a popular platform for preparing for coding interviews, and with the help of AI tools like [Chatmagic](https://www.chatmagic.app), we can generate solutions quickly and efficiently - helping you pass the interviews and get the job offer without having to study for months.

	# Problem Statement
	> Given an alphanumeric string s, return the second largest numerical digit that appears in s, or -1 if it does not exist. An alphanumeric string is a string consisting of lowercase English letters and digits.   Example 1:  Input: s = "dfa12321afd" Output: 2 Explanation: The digits that appear in s are [1, 2, 3]. The second largest digit is 2.  Example 2:  Input: s = "abc1111" Output: -1 Explanation: The digits that appear in s are [1]. There is no second largest digit.     Constraints:  1 <= s.length <= 500 s consists of only lowercase English letters and digits.  

	# Explanation
	Here's the approach to solve the problem, followed by the Python code:

*   **Identify Unique Digits:** Iterate through the string and extract the unique digits present.
*   **Find Largest and Second Largest:** Efficiently determine the largest and second largest digit from the extracted unique digits.
*   **Handle Edge Cases:** Return -1 if there are fewer than two distinct digits.

*   **Runtime Complexity:** O(n) - due to iterating through the string once. **Storage Complexity:** O(1) - as we store at most 10 digits (0-9).

	
	# Code
	```python
	def secondHighest(s: str) -> int:
    digits = set()
    for char in s:
        if char.isdigit():
            digits.add(int(char))

    if len(digits) < 2:
        return -1

    largest = -1
    second_largest = -1

    for digit in digits:
        if digit > largest:
            second_largest = largest
            largest = digit
        elif digit > second_largest and digit != largest:
            second_largest = digit

    return second_largest
	```
			
