def build_allele_freq_map(allele_seq, freq_seq):
    """
    Construct a <allele, freq> map, sorted by <freq> ascendingly.

    0 in `allele_seq`, if exists, will be removed.

    Returned data structure is a list of tuples, e.g.
        getAlleleFreqMap(['A','G'], [0.2,0.8]) => [('A', 0.2), ('G', 0.8)]
    """
    
    if len(allele_seq) == 0 or len(freq_seq) == 0:
        # if `allele_seq` or `freq_seq` is empty list
        return [] 

    if '0' in allele_seq:
        zero_index = allele_seq.index('0')
        allele_seq.pop(zero_index)
        freq_seq.pop(zero_index)

    af_map = list(zip(allele_seq, freq_seq))
    
    # import operator
    # afMap = sorted(afMap, key=operator.itemgetter(1))
    af_map = sorted(af_map, key=lambda x: x[1])
    
    return af_map