Senior
65
Opdracht 2. Het samenvoegen van twee gesorteerde arrays Gegeven zijn twee gesorteerde arrays in oplopende volgorde, nums1 en nums2. Het is nodig om ze samen te voegen tot één gesorteerde array in oplopende volgorde. nums1 = [1, 3, 5] nums2 = [2, 4, 6] merge_sorted(nums1, nums2) -> [1, 2, 3, 4, 5, 6]
Bedrijven waar gevraagd werd
Antwoord van AI
sobes.tech AI
Для слияния двух отсортированных массивов можно использовать два указателя, которые будут проходить по массивам и сравнивать текущие элементы, добавляя меньший в результирующий массив. Это классический алгоритм слияния, который работает за время O(n + m), где n и m — размеры массивов.
Пример на Python:
def merge_sorted(nums1, nums2):
i, j = 0, 0
merged = []
while i < len(nums1) and j < len(nums2):
if nums1[i] < nums2[j]:
merged.append(nums1[i])
i += 1
else:
merged.append(nums2[j])
j += 1
# Добавляем оставшиеся элементы
merged.extend(nums1[i:])
merged.extend(nums2[j:])
return merged
# Пример использования
nums1 = [1, 3, 5]
nums2 = [2, 4, 6]
print(merge_sorted(nums1, nums2)) # [1, 2, 3, 4, 5, 6]