java - Remove duplicate chars from a String recursively -
i need figure how can remove duplicates chars string. has done recursively real problem..
public class feq2 { /** * @param args */ public static void removedups(string s, int firstchar, int secondchar) { if (s.length() == 1) { system.out.println(s); } char = s.charat(firstchar); if (a == s.charat(secondchar)) { s = + s.substring(secondchar + 1); } system.out.println(s); removedups(s, firstchar + 1, secondchar + 1); //return s; } public static void main(string[] args) { //system.out.println(removedups("aaaabbarrrcc", 1)); removedups("aaaabbarrrcc", 0 , 1); } }
you can this:
public static string removedups(string s) { if ( s.length() <= 1 ) return s; if( s.substring(1,2).equals(s.substring(0,1)) ) return removedups(s.substring(1)); else return s.substring(0,1) + removedups(s.substring(1)); } input: "aaaabbarrrcc" output: "abarc"
===============
edit: way
public static string removedups(string s) { if ( s.length() <= 1 ) return s; if( s.substring(1).contains(s.substring(0,1)) ) return removedups(s.substring(1)); else return s.substring(0,1) + removedups(s.substring(1)); } input: "aaaabbarrrcc" output: "barc"
==============
edit: 3rd way
public static string removedups(string s) { if ( s.length() <= 1 ) return s; if( s.substring(0,s.length()-1).contains(s.substring(s.length()-1,s.length())) ) return removedups(s.substring(0,s.length()-1)); else return removedups(s.substring(0,s.length()-1)) + s.substring(s.length()-1,s.length()); } input: "aaaabbarrrcc" output: "abrc"
Comments
Post a Comment