一、题目描述
给定一个由纯数字组成以字符串表示的数值,现要求字符串中的每个数字最多只能出现2次,超过的需要进行删除,删除某个重复的数字后,其它数字相对位置保持不变。
如"34533",数字3重复超过2次,需要删除其中一个3,删除第一个3后获得最大数值"4533",请返回经过删除操作后的最大的数值,以字符串表示。
二、输入描述
第一行为一个纯数字组成的字符串,长度范围:[1,100000]。
三、输出描述
输出经过删除操作后的最大的数值。
四、解题思路
- 输入一个数字;
- 定义一个map,存储每个数字出现的次数;
- 遍历输入的数字;
- 获取每个数字出现的次数,没出现,默认为0;
- 如果出现的次数小于2,则添加到map和builder中;
- 如果出现的次数大于2,遍历最终返回的数字builder;
- 以78877为例,当遍历到“第三个7”的时候;
- 如果“某个7”比它后面的那个数小,表示,删除“某个7”的话&#x