string去除重复字符两个方法

string去除重复字符


今天面试遇到,使用了第一种,回来记录了下,觉得一般可能不是这样解的。想了第二种,还是觉得不妥,这里都贴出来。

网上有很多伪方法,只删除了相邻重复字符串,大家警惕!

主要使用list.contains()检测重复。


一直在想本来应该怎样做,因为面试官说了句只用了一层循环,可能这样是比较通用的:

1、charAt遍历String每个字符(第一层循环)

2、charAt遍历StringBuffer每个字符,如果没有就加进去(第二层循环)


import java.util.*;
public class Main06 {


	public static void main(String[] args) {
		// TODO Auto-generated method stub
		String str = "kjkljklhuionsd";
		System.out.println(sub(str));
		System.out.println(sub1(str));
	}
	//方法1
	static String sub(String str){
		StringBuffer result = new StringBuffer();
		List list = new ArrayList();
		char[] cs = str.toCharArray();
		for(int i=0; i

你可能感兴趣的:(JavaSe,笔试,面试题)