package it.com.shift.plugin.issue;
import java.util.HashMap;
import java.util.LinkedHashMap;
public class FindNonRepetitvieCharecter {
public static void main(String[] args) {
// TODO Auto-generated method stub
String name ="krishknaraois";
System.out.println(printFirstNonRepetingCharacterIterative(name));
System.out.println(printFirstNonRepetingCharacterUsingJava(name));
System.out.println(printFirstNonRepetingCharacterUsingJavaSinglePass(name));
}
private static char printFirstNonRepetingCharacterUsingJavaSinglePass(String name) {
for(char value : name.toCharArray()){
if(name.indexOf(value)==name.lastIndexOf(value)){
return value;
}
}
return ' ';
}
//Minimum complexity n and maximum complexity n^2
private static char printFirstNonRepetingCharacterUsingJava(String name) {
HashMap<Character,Integer> characters = new LinkedHashMap<Character,Integer>();
for (char literal : name.toCharArray()) {
characters.put(literal, characters.containsKey(literal)?characters.get(literal)+1:1);
}
for (Character value : characters.keySet()) {
if(characters.get(value)==1){
return value;
}
}
return ' ';
}
//Minimum complexity n and maximum complexity n^2
private static char printFirstNonRepetingCharacterIterative(String name) {
// TODO Auto-generated method stub
for(int i=0;i<name.length();i++){
for(int j=i+1;j<name.length();j++){
if(name.charAt(i)== name.charAt(j)){
break;
}else if(j+1==name.length()){
return name.charAt(i);
}
}
}
return ' ';
}
}
import java.util.HashMap;
import java.util.LinkedHashMap;
public class FindNonRepetitvieCharecter {
public static void main(String[] args) {
// TODO Auto-generated method stub
String name ="krishknaraois";
System.out.println(printFirstNonRepetingCharacterIterative(name));
System.out.println(printFirstNonRepetingCharacterUsingJava(name));
System.out.println(printFirstNonRepetingCharacterUsingJavaSinglePass(name));
}
private static char printFirstNonRepetingCharacterUsingJavaSinglePass(String name) {
for(char value : name.toCharArray()){
if(name.indexOf(value)==name.lastIndexOf(value)){
return value;
}
}
return ' ';
}
//Minimum complexity n and maximum complexity n^2
private static char printFirstNonRepetingCharacterUsingJava(String name) {
HashMap<Character,Integer> characters = new LinkedHashMap<Character,Integer>();
for (char literal : name.toCharArray()) {
characters.put(literal, characters.containsKey(literal)?characters.get(literal)+1:1);
}
for (Character value : characters.keySet()) {
if(characters.get(value)==1){
return value;
}
}
return ' ';
}
//Minimum complexity n and maximum complexity n^2
private static char printFirstNonRepetingCharacterIterative(String name) {
// TODO Auto-generated method stub
for(int i=0;i<name.length();i++){
for(int j=i+1;j<name.length();j++){
if(name.charAt(i)== name.charAt(j)){
break;
}else if(j+1==name.length()){
return name.charAt(i);
}
}
}
return ' ';
}
}
No comments:
Post a Comment