How to merge elements of two sorted not equal lists by maintaining the sorted order in Python

2 Answers

0 votes
def merge_sorted_not_equal_arrays(lst1, lst2) :
    size1 = len(lst1)
    size2 = len(lst2)
    i = 0
    while (i < size1) :
        if (lst1[i] > lst2[0]) :
            tmp = lst1[i]
            lst1[i] = lst2[0]
            lst2[0] = tmp

            element0 = lst2[0]
            k = 1
            while (k < size2 and lst2[k] < element0) :
                lst2[k - 1] = lst2[k]
                k += 1
            lst2[k - 1] = element0
        i += 1
        
lst1 = [1, 4, 6, 8, 10]
lst2 = [2, 3, 5, 9]

merge_sorted_not_equal_arrays(lst1, lst2)

print(lst1)
print(lst2)



'''
run:

[1, 2, 3, 4, 5]
[6, 8, 9, 10]

'''

 



answered Sep 16, 2023 by avibootz
0 votes
def merge_sorted_not_equal_arrays(lst1, lst2) :
    size1 = len(lst1)
    size2 = len(lst2)
    i = size2 - 1
    
    while (i >= 0) :
        j = 0
        last1 = lst1[size1 - 1]
        j = size1 - 2
        while (j >= 0 and lst1[j] > lst2[i]) :
            lst1[j + 1] = lst1[j]
            j -= 1
        if (last1 > lst2[i]) :
            lst1[j + 1] = lst2[i]
            lst2[i] = last1
        i -= 1
        
lst1 = [1, 4, 6, 8, 10]
lst2 = [2, 3, 5, 9]

merge_sorted_not_equal_arrays(lst1, lst2)

print(lst1)
print(lst2)



'''
run:

[1, 2, 3, 4, 5]
[6, 8, 9, 10]

'''

 



answered Sep 16, 2023 by avibootz
...