华为-on练习--重复的字符过滤
称号:
- 请写一个字符串过滤程序,如果使用多个相同的字符出现在字符串中,字符首次出现在非过滤,。
- 比方字符串“abacacde”过滤结果为“abcde”。
- 演示样例
- 输入:“deefd” 输出:“def”
- 输入:“afafafaf” 输出:“af”
- 输入:“pppppppp” 输出:“p”
分析: 看到这样的类似的同样字符过滤。使用java的话我们第一个想到的应该就是set这个集合,这个集合可以有效的处理掉反复的元素。 接下来就是顺序问题了,这里是保持字符原有的顺序,所以我们得选用一个实现set的类来存储这些字符。 没错LinkedHashSet可以非常好的解决我们的问题。接下来就是写程序的事了
代码例如以下:
package com.wenj.test;
import java.util.Iterator;
import java.util.LinkedHashSet;
import java.util.Set;
/**
* 题目:
请编写一个字符串过滤程序。若字符串中出现多个同样的字符,将非首次出现的字符过滤掉。
比方字符串“abacacde”过滤结果为“abcde”。
演示样例
输入:“deefd” 输出:“def”
输入:“afafafaf” 输出:“af”
输入:“pppppppp” 输出:“p”
* @author wenj91-PC
*
*/
public class TestStrFilter {
public static void main(String args[]){
String strIn = "pppppppp";
TestStrFilter ts = new TestStrFilter();
System.out.println(ts.strFilter(strIn));
}
public String strFilter(String strIn){
String strTemp = strIn;
char[] str2C = strTemp.toCharArray();
Set<Character> cs = new LinkedHashSet<Character>();
for(int i=0; i<str2C.length; i++){//利用set实现字符过滤
cs.add(str2C[i]);
}
String temp = "";
for(Iterator<Character> it=cs.iterator(); it.hasNext(); ){//又一次组合字符串
temp += it.next();
}
return temp;
}
}
版权声明:本文博主原创文章。博客,未经同意不得转载。
华为-on练习--重复的字符过滤的更多相关文章
- 输入一个字符串,去掉重复的字符,并按ASCII值排序-华为机试
import java.util.Scanner; //输入字符串,去掉重复的字符,并按ASSIC码值排序 public class quChong { public static void main ...
- 找出字符串中第一个不重复的字符(JavaScript实现)
如题~ 此算法仅供参考,小菜基本不懂高深的算法,只能用最朴实的思想去表达. //找出字符串中第一个不重复的字符 // firstUniqueChar("vdctdvc"); --& ...
- 删除重复的字符(给一个字符串,删除连续重复的字符,要求时间复杂度为O(1)……)
// singal.cpp : Defines the entry point for the console application.// #include "stdafx.h" ...
- java 非法字符过滤 , 半角/全角替换
java 非法字符过滤 , 半角/全角替换 package mjorcen.netty.test1; import java.io.UnsupportedEncodingException; publ ...
- jst通用删除数组中重复的值和删除字符串中重复的字符
以下内容属于个人原创,转载请注明出处,非常感谢! 删除数组中重复的值或者删除字符串重复的字符,是我们前端开发人员碰到很多这样的场景.还有求职者在被面试时也会碰到这样的问题!比如:问删除字符串重复的字符 ...
- 剑指Offer-字符流中第一个不重复的字符
package String; import java.util.LinkedHashMap; import java.util.Map; /** * 字符流中第一个不重复的字符 * 题目描述 * 请 ...
- Java入门:基础算法之从字符串中找到重复的字符
本程序演示从一个字符串中找出重复的字符,并显示重复字符的个数. import java.util.HashMap; import java.util.Map; import java.util.Set ...
- java web过滤器实际应用(解决中文乱码 html标签转义功能 敏感字符过滤功能)
转载地址:http://www.cnblogs.com/xdp-gacl/p/3952405.html 在filter中可以得到代表用户请求和响应的request.response对象,因此在编程中可 ...
- UniCode编码表及部分不可见字符过滤方案
Unicode编码表/0000-0FFF 图例: Unicode 3.1 Unicode 1.0 Unicode 3.2 Unicode 1.1 Unicode 4.0 Unicode 2.0 Uni ...
随机推荐
- arcmap坐标点生成线和面(更正版)
一:本博客的脉络 (1 )做了例如以下更正:之前在网上搜到的结果是:arcmap坐标点生成线和面 ------ 注意该功能在ArcGIS10中没有了,当时自己也没有多想就转载了,再此做一下更正或者叫做 ...
- [置顶] 最优间隔分类器、原始/对偶问题、SVM的对偶问题——斯坦福ML公开课笔记7
转载请注明:http://blog.csdn.net/xinzhangyanxiang/article/details/9774135 本篇笔记针对ML公开课的第七个视频,主要内容包括最优间隔分类器( ...
- Linux下一个php+mysql+nginx构建编译(三)
在此之前一直是一个关键构建webserver.但一个关键的建筑环境都比较旧的.假定使用一个相对较新的环境,尤其是正式的server.您必须手动编译自己建(基于以下的结构linux centos6.5 ...
- 最佳新秀SSH十六Struts2它是如何工作的内部
前面说完了Spring.Hibernate,非常自然今天轮到struts了.struts的核心原理就是通过拦截器来处理client的请求,经过拦截器一系列的处理后,再交给Action.以下先看看str ...
- Web Service简单入门示例
Web Service简单入门示例 我们一般实现Web Service的方法有非常多种.当中我主要使用了CXF Apache插件和Axis 2两种. Web Service是应用服务商为了解决 ...
- lua.c:80:31: fatal error: readline/readline.h: No such file or directory
make linuxcd src && make linuxmake[1]: Entering directory `/root/lua/lua-5.3.2/src'make all ...
- dom4j解析xml中指定元素下内容
需求:XML为例如以下样式,如今我仅仅想取得timer以下的5000和60000. 解决的方法例如以下: <?xml version="1.0" encoding=" ...
- UVa 11069 - A Graph Problem
题目:给你一个集合{1,2,..,n},计算子集的个数,子集的元素不能相邻且不能再插入元素. 分析:dp,动态规划.相邻元素间仅仅能相差3或者2. 动态方程:f(k)= f(k-2)+ f(k-3): ...
- 【Java基础】System.arraycopy()的使用详解
由于在Java中System.arraycopy()方法在一维数组和二维数组中的表现不同,所以做了一个测试 public static void main(String[] args) { int[] ...
- 3.cocos2dx它Menu,由menu为了实现场景切换
1 头文件 TMenu.h #ifndef __TMENU_H__ #define __TMENU_H__ #include "cocos2d.h" USING_NS_CC; ...