2016-04-12 13 views
2

Gegeben ein Array unsortierter Zeichen für z.B. 'a', 'c', 'd', 'b', 'a', 'b'. Was ist der beste Weg, doppelte Zeichen mit leeren Leerzeichen zu sortieren und zu entfernen und die leeren Leerzeichen an das Ende des Arrays zu verschieben. z.B. 'a', 'b', 'c', 'd', ' ', ' '; ohne Verwendung zusätzlicher Puffer, Speicher oder Sammlungen API in Java?Ersetze doppelte Zeichenkette in Array

Antwort

1
public void checkduplicate() 
    { 
     char chnew =' '; 
     char[] ch ={ 'a', 'c', 'd', 'b' , 'a', 'b'}; 

     for(int i =0 ; i<ch.length;i++) 
     {       
      for(int j =i+1 ;j<ch.length;j++) 
      { 

       if(ch [j]== ch[i]) 
       { 
        ch[j] = ' '; 
       } 
       if(ch[j] <ch[i] && ch[j] != ' ') 
      { 
       chnew = ch[i];    
       ch[i] = ch[j]; 
       ch[j] = chnew;         
      } 

      } 

     } 
     for(int k=0;k<ch.length;k++) 
     { 
      System.out.println(ch[k]); 
     } 

    } 
+0

aussehen wie Sie diesen Teil der Frage verpasst :) 'die leeren Räume verschieben von array' – Bharatesh

+0

zu Ende sein absolut zum Verschieben leeren Räumen funktioniert gut von Array zu beenden – Assen

+0

Überprüfung dieses Szenario' char [] ch = {a, a, c, d, b, a, b;} – Bharatesh

Verwandte Themen