Python Coding Questions @hiringhustle
Python Coding Questions @hiringhustle
@hiringhustle
For Loop:
Answer:
def iterate_list(lst):
for item in lst:
print(item)
Answer:
def iterate_dict(dictionary):
for key, value in dictionary.items():
print(key, value)
Answer:
def fibonacci_series(limit):
fib = [0, 1]
for i in range(2, limit):
fib.append(fib[-1] + fib[-2])
return fib
Answer:
def count_even_numbers(lst):
count = 0
for num in lst:
if num % 2 == 0:
count += 1
return count
Answer:
6. Calculate Factorial:
Answer:
def factorial(n):
result = 1
for i in range(1, n+1):
result *= i
return result
7. Reverse String:
loop.
Answer:
def reverse_string(s):
reversed_str = ''
for i in range(len(s)-1, -1, -1):
reversed_str += s[i]
return reversed_str
Answer:
while Loop:
Here are some Python problem-solving interview questions related to while
Answer:
def factorial(n):
result = 1
while n > 1:
result *= n
n -= 1
return result
Answer:
def sum_of_digits(n):
total = 0
while n > 0:
total += n % 10
n //= 10
return total
Answer:
def find_primes(limit):
primes = []
num = 2
while num <= limit:
is_prime = True
divisor = 2
while divisor * divisor <= num:
if num % divisor == 0:
is_prime = False
break
divisor += 1
if is_prime:
primes.append(num)
num += 1
return primes
Answer:
Answer:
def is_armstrong(n):
order = len(str(n))
temp = n
total = 0
while temp > 0:
digit = temp % 10
total += digit ** order
temp //= 10
return n == total
Answer:
def fibonacci_series(limit):
fib = [0, 1]
while fib[-1] + fib[-2] <= limit:
fib.append(fib[-1] + fib[-2])
return fib
basic problems:
Here are some Python problem-solving interview questions along with their
answers:
1. Reverse a String:
Answer:
def reverse_string(string):
return string[::-1]
Answer:
def is_palindrome(string):
return string == string[::-1]
Question: Given a list of numbers from 1 to N with one missing, find the
missing number.
Answer:
def find_missing_number(nums):
n = len(nums) + 1
total_sum = n * (n + 1) // 2
return total_sum - sum(nums)
Answer:
Answer:
def find_max(lst):
return max(lst)
Answer:
def count_words(sentence):
return len(sentence.split())
Answer:
def remove_duplicates(lst):
return list(dict.fromkeys(lst))
Answer:
Here are some more Python problem-solving interview questions along with
their answers:
Answer:
2. Calculate Factorial:
Answer:
def factorial(n):
if n == 0:
return 1
Answer:
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def reverse_linked_list(head):
prev = None
while head:
temp = head.next
head.next = prev
prev = head
head = temp
return prev
Answer:
def is_armstrong(num):
order = len(str(num))
sum = 0
temp = num
while temp > 0:
digit = temp % 10
sum += digit ** order
temp //= 10
return num == sum
Answer:
Answer:
def second_largest(lst):
if len(lst) < 2:
return None
lst.sort()
return lst[-2]
Answer:
def fibonacci(n):
fib = [0, 1]
while fib[-1] + fib[-2] <= n:
fib.append(fib[-1] + fib[-2])
return fib
These additional questions cover various topics such as linked lists, Armstrong
numbers, Fibonacci series, and more, showcasing different problem-solving
techniques in Python.
Here are some more Python problem-solving interview questions along with
their answers:
Answer:
def longest_common_prefix(strs):
if not strs:
return ""
min_str = min(strs, key=len)
for i, char in enumerate(min_str):
for string in strs:
if string[i] != char:
return min_str[:i]
return min_str
2. Rotate Array:
Answer:
Question: Write a Python function to merge two sorted linked lists and
return it as a new sorted list.
Answer:
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
Question: Write a Python function to find all the start indices of the
anagrams of a given string in another string.
Answer:
Answer:
def first_non_repeating_char(s):
count = collections.Counter(s)
String :
Answer:
def reverse_words(s):
return ' '.join(s.split()[::-1])
Answer:
Answer:
Answer:
import string
def is_pangram(s):
return set(string.ascii_lowercase) <= set(s.lower
())
Answer:
def remove_duplicates(s):
seen = set()
return ''.join(char for char in s if not (char in
seen or seen.add(char)))
Answer:
7. String Compression:
Answer:
def compress_string(s):
result = []
count = 1
for i in range(1, len(s)):
if s[i] == s[i - 1]:
count += 1
else:
result.append(s[i - 1] + str(count))
count = 1
result.append(s[-1] + str(count))
compressed = ''.join(result)
return compressed if len(compressed) < len(s) els
e s
List:
Answer:
Answer:
def remove_duplicates_sorted(nums):
if not nums:
return 0
i = 0
for j in range(1, len(nums)):
if nums[j] != nums[i]:
i += 1
nums[i] = nums[j]
return i + 1
3. Rotate List:
Answer:
Question: Write a Python function to merge two sorted lists into a single
sorted list.
Answer:
Answer:
def single_number(nums):
result = 0
for num in nums:
result ^= num
return result
Answer:
Answer:
Answer:
Answer:
4. Check if Subset:
Answer:
Answer:
Answer:
def remove_duplicates(lst):
return list(set(lst))
Answer:
Answer:
def count_distinct_elements(lst):
return len(set(lst))
dictionaries:
Answer:
Answer:
Answer:
Answer:
Answer:
def unique_values(dictionary):
return set(dictionary.values())
Answer:
Answer:
Answer:
def count_characters(string):
char_count = {}
for char in string:
char_count[char] = char_count.get(char, 0) +
1
return char_count