欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

将两个有序列表组合成新的有序列表,并去除重复元素

程序员文章站 2022-05-21 23:29:31
...

题目:
有两个有序列表A和B,合并A和B成为一个新的有序列表C,并去除其中的重复元素。
法一:
思路:
set集合是不存在重复元素的,list列表内的元素是有序的,因此可将两者进行嵌套。先将列表合并,再利用set去重,最后按原序列排序。
代码:

def newList(A,B):
    C=A+B                                  #将两个列表合并(没去重)
    n=list(set(C))                         #去重
    n.sort(key=C.index)              #按原序列排序
    print(n)
if __name__=='__main__':
    A=list(input('InputA:'))            #输入有序列表A
    B=list(input('InputB:'))            #输入有序列表B
    newList(A,B)

法二:
思路:
申请一个新的空列表,先遍历列表A,并将元素添加到新列表中,当元素与列表中有相同时,不添加,直到遍历结束;接着遍历列表B,同上。
代码:

def newL(A,B):
    C=[]
    for i in A:
        if i not in C:
            C.append(i)
    for j in B:
        if j not in C:
            C.append(j)
    print(C)
if __name__=='__main__':
    A=list(input('inputA:'))
    B = list(input('inputB:'))
    newL(A, B)
相关标签: 题目