java:输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java:输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。相关的知识,希望对你有一定的参考价值。

import java.util.Scanner;
public class Main
public static void main(String[] args)
@SuppressWarnings("resource")
Scanner scanner=new Scanner(System.in);
while(scanner.hasNext())
String s=scanner.nextLine();
int len=s.length();
int []arr1=new int[10];
for(int i=len-1;i>=0;i--)
if(arr1[s.charAt(i)-48]==0)
System.out.print(s.charAt(i)-48);
arr1[s.charAt(i)-48]++;





输入9876673,输出37689,
代码这一段什么意思?if(arr1[s.charAt(i)-48]==0)
System.out.print(s.charAt(i)-48);
arr1[s.charAt(i)-48]++;

参考技术A 字符0的unicode码是48,'0'-48=0;..'9'-48=9追问

为啥int【10】呢?为什么要判断数组arr1【】==0?

追答

为了获取不重复的数字,==0表示没有,有的那一位表示1,数组的索引表示数字

本回答被提问者采纳

python常见面试题讲解提取不重复的整数

题目描述

输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。

输入描述:

输入一个int型整数

输出描述:

按照从右向左的阅读顺序,返回一个不含重复数字的新的整数

示例1

输入

9876673

输出

37689

解题思路:
此题比较简单,正常1分钟就可以算出来了,用for函数循环读入数组,写之前做一个in的判断
1 x=input()
2 z=[]
3 for i in range(len(x)):
4     if int(x[-1-i]) not in z:
5         z.append(int(x[-1-i]))
6 for i in z:
7     print(i,end="")

 



以上是关于java:输入一个int型整数,按照从右向左的阅读顺序,返回一个不含重复数字的新的整数。的主要内容,如果未能解决你的问题,请参考以下文章

华为机试:提取不重复的整数

提取不重复的整数

华为机试 提取不重复的整数

华为机试练习提取不重复的整数

python常见面试题讲解提取不重复的整数

python常见面试题讲解提取不重复的整数