From 542f68790dbb1ba3f8493e6cde1a8f6023de9774 Mon Sep 17 00:00:00 2001 From: Varun Upadhyay Date: Tue, 27 Jun 2017 12:02:37 +0530 Subject: [PATCH] Create removeDuplicateFromString.java An algorithm which removes duplicates from a given input string --- removeDuplicateFromString.java | 45 ++++++++++++++++++++++++++++++++++ 1 file changed, 45 insertions(+) create mode 100644 removeDuplicateFromString.java diff --git a/removeDuplicateFromString.java b/removeDuplicateFromString.java new file mode 100644 index 00000000..ce8f3499 --- /dev/null +++ b/removeDuplicateFromString.java @@ -0,0 +1,45 @@ +import java.io.BufferedReader; +import java.io.InputStreamReader; + +/** + * + * @author Varun Upadhyay (https://github.com/varunu28) + * + */ + +public class removeDuplicateFromString { + public static void main (String[] args) throws Exception{ + BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); + String inp_str = br.readLine(); + + System.out.println("Actual string is: " + inp_str); + System.out.println("String after removing duplicates: " + removeDuplicate(inp_str)); + + br.close(); + } + + /** + * This method produces a string after removing all the duplicate characters from input string and returns it + * Example: Input String - "aabbbccccddddd" + * Output String - "abcd" + * @param s String from which duplicate characters have to be removed + * @return string with only unique characters + */ + + public static String removeDuplicate(String s) { + if(s.isEmpty() || s == null) { + return s; + } + + StringBuilder sb = new StringBuilder(""); + int n = s.length(); + + for (int i = 0; i < n; i++) { + if (sb.toString().indexOf(s.charAt(i)) == -1) { + sb.append(String.valueOf(s.charAt(i))); + } + } + + return sb.toString(); + } +}