예제 #1
0
def solution_4_6(S1,S2,x):
    s2 = merge_sort(S2)
    low = 0
    for i in s1:
        if binary_search(s2,x-i,0,len(s2)):
            return (val,i)
    return -1:w
def solution(a, k):

    sorted_array = merge_sort(a)
    print sorted_array
    n = len(a)-1
    pairs = []
    for i in sorted_array:
        if binary_search(sorted_array,k+i,0,n) != -1:
            pairs.append((i,k+i))
    return pairs
예제 #3
0
def solution_4_3(a):
    a = [1,3,5,9]
    s = merge_sort(a)
    low = 0
    high = len(s)-1
    min_diff = float('inf')
    pairs = []
    while low < high:
        pairs.append((a[low],a[high]))
        low +=1
        high-=1
    print pairs
예제 #4
0
def solution_4_5():
    ''' Algorithm to get mode of an array'''
    value_dict = {}
    a = [4,6,2,4,3,1]
    s= merge_sort(a)
    for item in s:
        value_dict[item] = value_dict.get(item,0) + 1
    max_key = 0
    max_value = 0
    for key,value in value_dict.iteritems():
        
        if value > max_value:
            max_key = key
            max_value = value
    return max_key