2016-04-12 12 views
2

たとえば、ソートされていない文字の配列が与えられています。 'a', 'c', 'd', 'b', 'a', 'b'。重複する文字をソートして空のスペースで削除し、空のスペースを配列の最後に移動する最も良い方法は何ですか?例えば'a', 'b', 'c', 'd', ' ', ' '; Javaで追加のバッファ、メモリ、またはコレクションのAPIを使用しないでください。あなたのような配列内の重複する文字を置換する

答えて

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

外観は質問:) '絶対に配列の – Bharatesh

+0

の最後に空のスペースをシフトのこの部分を逃したこのシナリオ'のchar [] CH = {'a'、 'a'、 'c'、 'd'、 'b'、 'a'、 'b'}; ' – Assen

+0

チェックを終了するには、空のスペースをシフトするため正常に動作してarray' – Bharatesh

関連する問題