京东数据分析笔试题

第一题:姓名排序
ZHANG SAN
LI SI
WANG WU
WANG LIU
WANG QI
ZHANG WU
LI WU
给出n行姓名,然后根据姓出现次数进行排序,当姓出现次数一样大多的时候,根据输入的顺序排序。
 WANG WU
 WANG LIU
 WANG QI
 ZHANG SAN
 LI SI
 ZHANG WU
 LI WU
分享一下我的思路,不知道能不能ac
ss=input()
arr=[]
while ss !='':    
    arr.append(ss)
    ss=input()
dic={}
dt={}
for i in range(len(arr)):
    name=arr[i].split(' ')[0]
    if dic.get(name,0)==0:
        dic[name]=1
    else:
        dic[name]+=1
for i in range(len(arr)): 
    name=arr[i].split(' ')[0]
    dt[arr[i]]=dic[name]
lis=[]
for i in range(len(arr)):
    lis.append((dt[arr[i]],i))

lis.sort(key=lambda x:(-x[0],x[1]))
#lis=sorted(lis,key=lambda x:(x[0],-x[1]),reverse=True)
for i in range(len(lis)):
    print(arr[lis[i][1]])




#京东##笔试题目##题解#
全部评论
唉,三行SQL能解决的非要这么麻烦,写python
点赞 回复 分享
发布于 2019-08-28 20:27

相关推荐

不愿透露姓名的神秘牛友
07-09 16:15
我应届生,去年10月份开始在这家公司实习,到今年10月份正好一年想(实习+试用期),在想要不要提前9月份就离职,这样好找工作些,但又差一个月满一年,又怕10月份国庆回来离职,容易错过了下半年的金九银十,到年底容易gap到年后
小破站_程序员YT:说这家公司不好吧,你干了快一年 说这家公司好吧,你刚毕业就想跑路说你不懂行情吧,你怕错过金九银十说 你懂行情吧,校招阶段在实习,毕业社招想换工作 哥们,我该怎么劝你留下来呢
应届生,你找到工作了吗
点赞 评论 收藏
分享
评论
点赞
9
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务