Java--消除重复数字后的最大值
描述:
一个长整型数字,消除重复的数字后,得到最大的一个数字。
如12341 ,消除重复的1,可得到1234或2341,取最大值2341.
42234,消除4 得到4223 或者 2234 ,再消除2,得到423或234,取最大值423
以此类推。
解决思路:
从头到尾遍历,比如432324,
第一次4,
第二次3,前面没有和3重复的,所以结果尾43
第三次2,前面没有和2重复的,所以结果尾432
第四次3,前面有重复的,比较前面那个3的下一个数字为2,因为3>2,所以删除当前的3. 结果为432
。。。。
代码如下:
import java.util.ArrayList;
import java.util.List;
import java.util.Scanner;
public class Main {public static void main(String[] args) {Scanner scanner = new Scanner(System.in);String input = scanner.next();List list = new ArrayList();for (int i=0;i<input.length();i++){list.add(input.charAt(i));}for (int i=0;i<list.size();i++){for (int j=0;j<i;j++){if (list.get(i).equals(list.get(j))){if (Integer.valueOf(list.get(j+1).toString())>Integer.valueOf(list.get(j).toString())){//移除list.remove(j);//i回退i--;break;}else {//移除list.remove(i);//i回退i--;break;}}}}for (int i=0;i<list.size();i++){System.out.print(list.get(i));}System.out.println();}
}
转载于:https://www.cnblogs.com/pilihaotian/p/8822933.html
Java--消除重复数字后的最大值相关推荐
- 2019届华为秋招笔试题【数字反转相加】【消除重复数字】【仿LISP运算】
数字反转相加 1.题目描述 请您写一个 reversoAdd函数,该函数根据输入的两个正整数a和b, 字按照高位在右边的方式反转后求和. 例如,reverseAdd(123, 456) == 321 ...
- 华为OD机试真题 Java 实现【删除重复数字后的最大数字】【100%通过率】【2022.11 Q4 新题】
所有题目均有四种语言实现.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录 题目 给定一个由纯数字组成以字符串表示的数值,现要求字符串中的每个数字最多只能 ...
- 华为OD机试真题 Python 实现【删除重复数字后的最大数字】【100%通过率】【2022.11 Q4 新题】
所有题目均有四种语言实现.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录 题目 给定一个由纯数字组成以字符串表示的数值,现要求字符串中的每个数字最多只能 ...
- 华为OD机试真题 C++ 实现【删除重复数字后的最大数字】【100%通过率】【2022.11 Q4 新题】
所有题目均有四种语言实现.C++ 实现目录.Python实现目录.Java实现目录.JavaScript实现目录 题目 给定一个由纯数字组成以字符串表示的数值,现要求字符串中的每个数字最多只能 ...
- java 消除魔鬼数字方法_消除Java详细信息的简便方法
存档日期:2019年5月14日 | 首次发布:2010年2月16日 Lombok是一个Java™实用程序,使您可以消除Java详细信息,特别是对于普通的旧Java对象(POJO). 它通过使用注释 ...
- 17R-无重复数字的三位数和去重后最大数
(1)有 1.2.3 .4 个数字,能组成多少个互不相同且无重复数字的三位数?都是多少? (2)给定一个正整数,给出消除重复数字以后最大的整数. 输入示例:423234 输出示例:432 void T ...
- C/C++面试之算法系列--去除数组中的重复数字
去除数组中的重复数字 Sailor_forever sailing_9806@163.com 转载请注明 http://blog.csdn.net/sailor_8318/archive/2008/ ...
- Java黑皮书课后题第7章:7.15(消除重复)使用下面的方法头编写方法,消除数组中重复出现的值。编写一个测试程序,读取10个数,调用该方法,并显示以一个空格分隔的不同数字
7.15(消除重复)使用下面的方法头编写方法,消除数组中重复出现的值.编写一个测试程序,读取10个数,调用该方法,并显示以一个空格分隔的不同数字 题目 题目描述与运行示例 破题 代码 21.11.11 ...
- java字符串去重复_java去除字符串中重复、不重复、消除重复后字符
java去除字符串中重复.不重复.消除重复后字符 import java.util.HashSet; import java.util.Set; public class Main { public ...
最新文章
- 听完411头猪的哼哼,他们找到了理解“猪语”的算法 | Scientific Reports
- 总结Unity 初学者容易犯的编译与运行时错误(第三部分)
- 消息队列服务器安装失败,开发环境下的RocketMQ完整安装步骤、错误分析以及示例...
- 五十八、2020美赛C题的思路以及个人Python的解法
- 一个关于c++ list迭代器的问题
- java基础File的简单使用记录
- python接口测试_Python接口自动化测试框架实战开发(一)
- php 怎么实现收藏功能,php收藏功能如何实现
- 大数据、java、python、区块链、人工智能哪个发展前景更好?
- 计算机英语audios啥意思,2020考研英语词汇:audio是什么意思
- 新版 chrome 将原生支持图片懒加载!
- NTA告警引发的dll劫持思考(溯源)
- python缺失值处理 fillna能否用scala来处理_数据清洗(一)丨处理缺失数据
- 最小方法ZOJ 1579 Bridge
- 实践项目:图书馆管理系统
- 路由器的工作原理、超详细的路由器转发数据包的封装过程及华为配置静态和默认路由命令
- Java项目:体育用品商城(java+SpringBoot+jsp+html+maven+mysql)
- word 的使用 —— 快捷键(分节符、分页符、分栏符)
- Vue:el-dialog可拖拽
- 用EFS加密文件的方法
热门文章
- QTableView和QTableWidget翻页功能实现
- Flume-NG源码阅读之SourceRunner,及选择器selector和拦截器interceptor的执行
- python中的中文乱码问题深入分析
- tushare 金融数据获取(R语言版)
- python 魔法函数 运行时_16个python常用魔法函数
- python开发环境和运行环境的区别_Django 开发环境与生产环境的区分详解
- 3d旋转相册代码源码_实现可旋转的Reflection Probe(原创)
- linux redis数据库安装配置,Linux系统中redis的安装配置步骤
- shell脚本按行读取文件的几种方式
- csapp 、sicp 、深入理解计算机系统、 计算机程序的构造和解释