python编程练习6

今天的题目:提取不重复的整数
输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。
首先对于实现逆序,有以下几个方法:

字符串逆序
1、
strA[::-1]

2、
#coding=utf-8   
strA = raw_input("请输入需要翻转的字符串:")  
order = []   
for i in strA:  
  order.append(i)  
order.reverse()   #将列表反转  
print ''.join(order)    #将list转换成字符串

我在一开始想到的方法就是通过将数字放入list然后进行逆序排序,set实现去重,其实是不可以的,因为使用set之后的顺序就打乱了。

参考了一下其他人的代码:

其中一个高手很好的解决了我的问题,而且代码很简单,对set集合排序,使用了原list的索引
a = str(input())[::-1]
print ''.join(sorted(set(a),key=a.index))

# 这个代码在网站上显示的内存占用为0,而第二段代码占用为140K
n=raw_input()
l=list(reversed(n))
result=[]
for i in l:
    if i not in result:
        result.append(i)
print("".join(result))

n=raw_input()
l=(reversed(n))
result=[]
for i in l:
    if i not in result:
        result.append(i)
print (''.join(result))
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 说明: 本文中出现的所有算法题皆来自牛客网-剑指Offer在线编程题,在此只是作为转载和记录,用于本人学习使用,不...
    秋意思寒阅读 1,170评论 1 1
  • 1. Java基础部分 基础部分的顺序:基本语法,类相关的语法,内部类的语法,继承相关的语法,异常的语法,线程的语...
    子非鱼_t_阅读 31,767评论 18 399
  • 本文出自 Eddy Wiki ,转载请注明出处:http://eddy.wiki/interview-code.h...
    eddy_wiki阅读 9,378评论 0 30
  • 个人学习批处理的初衷来源于实际工作;在某个迭代版本有个BS(安卓手游模拟器)大需求,从而在测试过程中就重复涉及到...
    Luckykailiu阅读 4,781评论 0 11
  • 珍惜珍惜 传说很久不能見你 春风微冷 晨曦微露 云聚如山 不拒 天高云淡 山色如黛 鸟语花香 欢喜 任凭 暖阳一地...
    近者悦远者来阅读 58评论 0 1