TGViewer
Python вопросы с собеседований Python вопросы с собеседований @python_job_interview · 24.9K subscribers
Post #394 4.32K
🧠 5 задач с собеседований Amazon для Python-разработчиков

Составили подборку из 5 задач с собеседований в Amazon, IBM и Apple для Python-разработчиков для джунов и миддлов.

Они относительно несложные и подойдут для junior и middle программистов, а встретить задачки можно в том числе на собеседованиях в Apple, Samsung, Oracle и IBM.


1. Изменить порядок слов
Вам дана строка 's' с некоторым количеством слов N. Нужно сделать так, чтобы исходный порядок слов в строке изменился на обратный.

При этом в исходной строке между словами может быть множество пробелов, но в результате работы скрипта мы должны получить предложение с одним пробелом между словами, без пробелов в начале предложения и после его конца.

Время выполнения скрипта не должно превышать 1 секунду.

Решение:
Если строка равна нулю или пуста, в выводе должна появиться пустая строка. То же самое стоит сделать, если в исходной строке находится один пробел.

Инициализируйте String ans для хранения перевернутой строки.

Инициализируйте указатель на конец исходной строки и запускайте цикл while, пока указатель не достигнет начала строки.

Если в строке встречается несколько пробелов, уменьшите указатель.

Добавьте пробелы в строку ans. После этого запустите вложенный цикл while, чтобы извлечь текущее слово из ans в вывод.

После прохождения всей строки верните ответ.

'''
Time Complexity = O(N)
Space Complexity = O(N)

Where N is the length of the string.
'''

def reverseString(str: str) -> str:

# if the string is " " then return "".
if(str == "" or str == " "):
return ""
ans = ''

start = len(str) - 1

while(start >= 0):

# Skip multiple spaces.
if(str[start] == ' '):
start-=1
else:

# Add space between words.
if(len(ans) > 0):
ans += (' ')

j = start

while(j >= 0 and str[j] != ' '):
j-=1

# add current word to ans.
ans += (str[j+1: j+1+start-j])
start = j

return ans

2. Сумма всех чисел до N
Вам дано число N. Напишите скрипт, который считал бы сумму всех четных чисел в промежутке от 1 до N, включая N. К примеру, если N равняется 6, то вывод должен быть равен 2+4+6, то есть 12.

Решение:
Нам нужно вывести формулу для вычисления суммы четных чисел до числа 'N'.

Пусть задано число N. Тогда общее количество четных чисел от 1 до N будет равно N/2. Например, для 4 список четных чисел будет равен 2 и 4, а их количество равно 2.

Последовательность четных чисел до N образует арифметическую прогрессию с общей разницей D между числами в 2, первым элементом A = 2, и количеством элементов N, равным N/2, как доказано выше.

Сумма арифметической прогрессии равна (N/2)*(A+L), где N — количество элементов, а L — последнее число, которое также можно записать как A + (N - 1)D.

Таким образом, сумма равна (N/2*2) * (2 + 2 + (N/2 - 1)*2) = (N/2) * (1 + 1 + N/2 - 1) = (N/2) * (N/2 + 1).

'''
Time Complexity : O(1)
Space Complexity : O(1)
'''

def evenSumTillN(n):

# Calculate the sum.
sum = (n // 2) * (n // 2 + 1)

return sum


📌Остальные

@python_job_interview
  • 👍 8
  • 🔥 8
  • ❤ 2
More from @python_job_interview
  1. Oct 1, 2026🖥 Примеры кода на Python 2026: лучшие практики, разбор и задачи с решениями Python пример…
  2. Sep 30, 2026🔥 Почему Python-библиотеки всё чаще пишут критичные части на Rust Например, Pydantic v2 и…
  3. Sep 29, 2026🌟 OpenScience: персональный учёный с режимом автономных экспериментов Стартап Synthetic S…
  4. Sep 28, 2026Миниатюра из фотографии за 4 строки Python 🐍 from PIL import Image with Image.open("my_im…
  5. Sep 26, 2026Octop - open-source платформа, где можно запускать сразу несколько AI-агентов для себя, се…
  6. Sep 23, 2026Визуализация данных на Python: 10 лучших примеров с кодом Визуализация данных на Python -…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →