java小演算法—去除字串重複字元__演算法

來源:互聯網
上載者:User

方法1:

public static void removeMethod(String s) {
        StringBuffer sb=new StringBuffer();
        int len=s.length();
        int i=0;
        boolean flag=false;
        for(i=0; i<len;i++){
            char c=s.charAt(i);
            if(s.indexOf(c)!=s.lastIndexOf(c)){
                flag=false;
            }else{
                flag=true;
            }
            if(i==s.indexOf(c))
                flag=true;
            if(flag){
                sb.append(c);
            }
        }
        System.out.print(sb.toString());
}


結果:0123456789




方法2:TreeSet


//1.將字串迴圈添加到TreeSet中

String str="01211113477440000447756677899123";
TreeSet<String> ts=new TreeSet<>();
 int len=str.length();
for(int i=0;i<len;i++){
ts.add(str.charAt(i)+"");
}

2.迴圈遍曆TreeSet
Iterator<String> i=ts.iterator();
StringBuilder sb=new StringBuilder();
while(i.hasNext()){
sb.append(i.next());
}


3.輸出結果
System.out.println(sb.toString());//0123456789



註:Set描述

Collection的子介面之Set介面
Set描述
Set是一種不包含重複的元素的Collection,即任意的兩個元素e1和e2都有e1.equals(e2)=false,Set最多有一個null元素。Set的建構函式有一個約束條件,傳入的Collection參數不能包含重複的元素。


Set介面之HashSet
此類實現 Set介面,由雜湊表(實際上是一個 HashMap 執行個體)支援。它不保證 set 的迭代順序;特別是它不保證該順序恒久不變。此類允許使用 null 元素。


HashSet簡單使用
public static void main(String[] args) {
HashSet<String> hs=new HashSet<String>();
hs.add("aaaa");
hs.add("aaaa");
hs.add("bbbb");
hs.add("bbbb");
hs.add("cccc");
hs.add("cccc");
hs.add("dddd");
hs.add(null);
Iterator<String> i=hs.iterator();
while(i.hasNext()){
System.out.println(i.next());
}
}
輸出
null
bbbb
dddd
aaaa
cccc


Set介面之TreeSet
此類實現Set介面,由二叉樹實現的,Treeset中的資料是自動排好序的,不允許放入null值。


TreeSet簡單使用
TreeSet<String> ts=new TreeSet<String>();
ts.add("aaaa");
ts.add("aaaa");
ts.add("bbbb");
ts.add("bbbb");
ts.add("cccc");
ts.add("dddd");
ts.add("dddd");
Iterator<String> i=ts.iterator();
while(i.hasNext()){
System.out.println(i.next());
}
輸出
aaaa
bbbb
cccc
dddd

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.