Senior
57
Aufgabe 2. Zusammenführen von zwei sortierten Arrays Gegeben sind zwei sortierte Arrays in aufsteigender Reihenfolge, nums1 und nums2. Es ist notwendig, sie zu einem einzigen sortierten Array in aufsteigender Reihenfolge zu vereinigen. nums1 = [1, 3, 5] nums2 = [2, 4, 6] merge_sorted(nums1, nums2) -> [1, 2, 3, 4, 5, 6]
Unternehmen wurden gefragt
Antwort von AI
sobes.tech KI
Для слияния двух отсортированных массивов можно использовать два указателя, которые будут проходить по массивам и сравнивать текущие элементы, добавляя меньший в результирующий массив. Это классический алгоритм слияния, который работает за время 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]