Python Exercises: Largest, lowest gap between sorted values of a list
Largest and Smallest Gaps
Write a Python program to calculate the largest and smallest gap between sorted elements of a list of integers.
Sample Data:
{1, 2 ,9, 0, 4, 6} -> 3
{23, -2, 45, 38, 12, 4, 6} -> 15
Sample Solution-1:
Python Code:
# Define a function named 'test' that takes a list 'nums' as input.
def test(nums):
# Sort the elements in the input list 'nums' in ascending order.
nums.sort()
# Calculate the largest gap between consecutive sorted values and store it in 'max_gap'.
max_gap = max(b - a for a, b in zip(nums, nums[1:]))
# Calculate the smallest gap between consecutive sorted values and store it in 'min_gap'.
min_gap = min(b - a for a, b in zip(nums, nums[1:]))
# Return a tuple containing both the 'max_gap' and 'min_gap'.
return max_gap, min_gap
# Define the original list 'nums'.
nums = [0, 9, 2, 4, 5, 6]
print("Original list:")
print(nums)
# Call the 'test' function to find the largest and smallest gap between sorted values in the list.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
# Define another list 'nums'.
nums = [23, -2, 45, 38, 12, 4, 6]
print("\nOriginal list:")
print(nums)
# Call the 'test' function for the second list of numbers.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
# Define another list 'nums'.
nums = [1, 2, 3]
print("\nOriginal list:")
print(nums)
# Call the 'test' function for the third list of numbers.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
# Define another list 'nums'.
nums = [-4, -3, 5, 20, 10, 1]
print("\nOriginal list:")
print(nums)
# Call the 'test' function for the fourth list of numbers.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
Sample Output:
Original list: [0, 9, 2, 4, 5, 6] Largest, lowest gap between sorted values of the said list: (3, 1) Original list: [23, -2, 45, 38, 12, 4, 6] Largest, lowest gap between sorted values of the said list: (15, 2) Original list: [1, 2, 3] Largest, lowest gap between sorted values of the said list: (1, 1) Original list: [-4, -3, 5, 20, 10, 1] Largest, lowest gap between sorted values of the said list: (10, 1)
Flowchart:
Sample Solution-2:
Python Code:
# Define a function named 'test' that takes a list 'nums' as input.
def test(nums):
# Sort the elements in the input list 'nums' in ascending order.
nums.sort()
# Create a list comprehension to calculate the differences between consecutive sorted values.
# Find the maximum difference in the sorted values and store it in 'max_gap'.
max_gap = max([sorted(nums)[i] - sorted(nums)[i-1] for i in range(1, len(nums))])
# Find the minimum difference in the sorted values and store it in 'min_gap'.
min_gap = min([sorted(nums)[i] - sorted(nums)[i-1] for i in range(1, len(nums))])
# Return a tuple containing both the 'max_gap' and 'min_gap'.
return max_gap, min_gap
# Define the original list 'nums'.
nums = [0, 9, 2, 4, 5, 6]
print("Original list:")
print(nums)
# Call the 'test' function to find the largest and smallest gap between sorted values in the list.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
# Define another list 'nums'.
nums = [23, -2, 45, 38, 12, 4, 6]
print("\nOriginal list:")
print(nums)
# Call the 'test' function for the second list of numbers.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
# Define another list 'nums'.
nums = [1, 2, 3]
print("\nOriginal list:")
print(nums)
# Call the 'test' function for the third list of numbers.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
# Define another list 'nums'.
nums = [-4, -3, 5, 20, 10, 1]
print("\nOriginal list:")
print(nums)
# Call the 'test' function for the fourth list of numbers.
print("Largest, lowest gap between sorted values of the said list:", test(nums))
Sample Output:
Original list: [0, 9, 2, 4, 5, 6] Largest, lowest gap between sorted values of the said list: (3, 1) Original list: [23, -2, 45, 38, 12, 4, 6] Largest, lowest gap between sorted values of the said list: (15, 2) Original list: [1, 2, 3] Largest, lowest gap between sorted values of the said list: (1, 1) Original list: [-4, -3, 5, 20, 10, 1] Largest, lowest gap between sorted values of the said list: (10, 1)
Flowchart:
Python Code Editor:
Previous Python Exercise: Find the largest odd number in a list of integers.
Next Python Exercise: Sum of missing numbers of a list of integers.
What is the difficulty level of this exercise?
Test your Programming skills with w3resource's quiz.
- Weekly Trends and Language Statistics
- Weekly Trends and Language Statistics