File tree 1 file changed +37
-0
lines changed
src/main/java/com/rampatra/strings
1 file changed +37
-0
lines changed Original file line number Diff line number Diff line change
1
+ package com .rampatra .strings ;
2
+
3
+ import java .util .Set ;
4
+ import java .util .TreeSet ;
5
+ import java .util .stream .Collectors ;
6
+
7
+ /**
8
+ * @author rampatra
9
+ * @since 2019-04-02
10
+ */
11
+ public class RemoveDuplicatesAndArrangeLetters {
12
+
13
+ private static String removeDuplicatesAndArrangeLettersLexicographically (String str ) {
14
+ Set <Character > charSet = new TreeSet <>();
15
+ char [] chars = str .toCharArray ();
16
+
17
+ for (char ch : chars ) {
18
+ charSet .add (ch );
19
+ }
20
+
21
+ return charSet .toString ();
22
+ }
23
+
24
+ private static String removeDuplicatesAndArrangeLettersLexicographically_Java8 (String str ) {
25
+ return str .chars ()
26
+ .distinct ()
27
+ .sorted ()
28
+ .mapToObj (i -> (char ) i )
29
+ .map (String ::valueOf )
30
+ .collect (Collectors .joining ());
31
+ }
32
+
33
+ public static void main (String [] args ) {
34
+ System .out .println (removeDuplicatesAndArrangeLettersLexicographically ("algo&dsInJava" ));
35
+ System .out .println (removeDuplicatesAndArrangeLettersLexicographically_Java8 ("algo&dsInJava" ));
36
+ }
37
+ }
You can’t perform that action at this time.
0 commit comments