string去除重复字符两个方法
来源:互联网 发布:nginx 跳转到二级目录 编辑:程序博客网 时间:2024/05/16 04:47
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 stubString str = "kjkljklhuionsd";System.out.println(sub(str));System.out.println(sub1(str));}//方法1static String sub(String str){StringBuffer result = new StringBuffer();List list = new ArrayList();char[] cs = str.toCharArray();for(int i=0; i<cs.length; i++){if(!list.contains(cs[i])){result.append(cs[i]);list.add(cs[i]);}}return result.toString();}//方法2static String sub1(String str){List list = new ArrayList();StringBuffer sb = new StringBuffer(str);int j=0;for(int i=0; i<str.length(); i++){if(list.contains(str.charAt(i))){sb.deleteCharAt(i-j); //String 是没有delete方法的j++; //因为删除了sb中的字符,有一个偏移}else{list.add(str.charAt(i));}}return sb.toString();}}
1 0
- string去除重复字符两个方法
- Android String字符串去除指定两个字符串范围内的字符
- python 去除重复字符
- 去除重复字符
- 去除重复字符
- 去除一个字符串中重复字符的方法
- 去除String首尾字符
- 去除重复字符并排序
- 去除重复字符并排序
- 去除重复字符并排序
- 去除重复字符并排序
- 去除重复字符并排序
- 去除字符串中的重复字符
- 去除字符串中重复字符
- oracle 去除重复字符函数
- 【c++】字符串---去除重复字符
- 去除重复字符并排序
- 去除字符串中重复字符
- 树的子结构——剑指offfer
- yuv 图像里的stride和plane的解释
- 播放PCM
- Swift溢出运算符
- boostrap学习小记-给网站加一个简单大方的banner吧
- string去除重复字符两个方法
- spring mvc 校验
- 【安卓】AsyncTask异步任务
- android studio 快捷键
- scala自学笔记(2)
- socket选项:SO_ERROR
- Android实现侧滑抽屉菜单(DrawerLayout+NavigationView+toolbar)
- 踏踏实实做一点事情
- 第25周-window程序设计(基础篇)-第3章-显示窗口ShowWindow