Python BasicsЛегко

Find Second Smallest Element in an Array

Detailed guide and Python implementation for the 'Find Second Smallest Element in an Array' problem.

Постановка задачи

Легко

Write a function second_smallest(arr) that takes a list of integers arr and returns the second smallest distinct element. If no second smallest exists (all elements are the same or array has fewer than 2 distinct values), return -1.

Ограничения
  • 1 <= len(arr) <= 10^5
  • -10^9 <= arr[i] <= 10^9

Примеры

Example 1
Input
arr = [3, 1, 4, 1, 5]
Output
3
Explanation

Sorted distinct values: [1, 3, 4, 5]. The second smallest is 3.

Example 2
Input
arr = [5, 5, 5]
Output
-1
Explanation

All elements are the same. No second smallest exists.

Example 3
Input
arr = [10, 20]
Output
20
Explanation

Two distinct values: 10, 20. Second smallest is 20.

Need a Hint?
Consider using Arrays-specific data structures like sets or heaps.
Edge Cases to Watch
  • Empty input structures
  • Single element inputs
  • Large numerical bounds

Готовы решить?

Open the problem in PyRun's browser-based Python editor. Your code runs fully offline — no server required.

Открыть в редакторе
Found this breakdown helpful?

PyRun is built and maintained by an independent solo developer. If this helped your interview prep, consider buying a coffee!

Buy me a coffee

Рекомендуемые ресурсы Python

Расширьте свои знания с помощью соответствующих интерактивных руководств, шпаргалок и сравнений кода.

Учебник по Python

Python Try/Except и обработка ошибок

Предотвратите сбой ваших скриптов Python. Узнайте, как блокировать try, кроме, наконец, и как правильно создавать пользовательские исключения.

Посмотреть ресурс
Практическое руководство

Как перевернуть строку в Python

Узнайте, как перевернуть строку в Python с помощью нарезки, функции Reverse() и конкатенации циклов, с помощью визуальных примеров кода.

Посмотреть ресурс
Шпаргалка

Шпаргалка по строковым методам Python

Полное справочное руководство по манипулированию строками в Python. Мастер форматирования, поиска, разделения, замены и проверки свойств строк.

Посмотреть ресурс
Сравнение языков

Python против JavaScript: какой язык программирования лучше?

Всестороннее сравнение Python и JavaScript. Изучите синтаксические различия, производительность, варианты использования (серверная и клиентская части) и примеры кодирования.

Посмотреть ресурс