前几天遇到的美团笔试题
题目:大概要求输入两组数字,对这两组数值排序然后输出结果
思路:输入两组数,合并两组数,排序
list1 = raw_input("input some numbers ex 2 7 1 :") list2 = raw_input("input some numbers ex 2 7 1 :") #将字符串转换成列表 list11 = list1.split(" ") list22 = list2.split(" ") #合并列表,将list22追加到list11尾部 #也可以使用切片来实现追加 list11.extend(list22) #对list11排序 #关于列表排序 list.sort()与sorted函数最大区别在于,sorted返回的是一个对象,并没有改变原列表 print sorted(list11)
最终返回的结果可能存在重复的元素,所以去重方法
1.set集合,因为集合中没有重复元素
>>> list = [1,2,3,1,2,3] >>> >>> set(list) set([1, 2, 3]) #注意:使用set不会保留原有的顺序
2.遍历列表,将所有元素追加到新列表,如果该元素已在新列表存在就不追加
list = [1,2,1,3,2,] list_new = [] for i in list: if i not in list_new: list_new.append(i) print list_new
等等
简单事情简单做