【问题标题】:Remove elements from the array which appear more than k times从数组中删除出现超过 k 次的元素
【发布时间】:2020-04-26 03:23:13
【问题描述】:

这个程序给出的输出为

1 6 7 9 11

我怎样才能让它输出为

[1, 6, 7, 9, 11]

代码:

def RemoveElements(my_lst2, n, k): 

    mp = {i:0 for i in range(len(my_lst2))} 

    for i in range(n): 
        mp[my_lst2[i]] += 1

    for i in range(n): 
        if (mp[my_lst2[i]] <= 1): 

            print(my_lst2[i], end = " ",)
if __name__ == '__main__': 
    my_lst2 = [0,1,2,3,2,3,4,5,4,5,6,7,9,11,0,5]
    n = len(my_lst2)
    k = 2

RemoveElements(my_lst2, n, k)

【问题讨论】:

    标签: python brackets


    【解决方案1】:

    现在您正在执行print(my_lst2[i], end = " ",),它将按照您当前的方式打印出来。如果您将my_lst2[i] 存储在一个列表中,然后打印出该列表,您将得到您想要的。

    def RemoveElements(my_lst2, n, k):
    
        mp = {i:0 for i in range(len(my_lst2))}
    
        for i in range(n):
            mp[my_lst2[i]] += 1
    
        l = []
    
        for i in range(n):
            if (mp[my_lst2[i]] <= 1):
                l.append(my_lst2[i])
    
        print(l)
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2020-12-18
      • 2020-08-13
      • 2019-04-03
      • 2015-11-04
      • 2018-08-11
      • 2017-02-01
      • 2021-12-31
      相关资源
      最近更新 更多