【问题标题】:Replace duplicate char in array [closed]替换数组中的重复字符[关闭]
【发布时间】:2016-04-12 05:38:20
【问题描述】:

给定一组未排序的字符,例如'a', 'c', 'd', 'b', 'a', 'b'。排序和删除带有空格的重复字符并将空格移到数组末尾的最佳方法是什么。例如'a', 'b', 'c', 'd', ' ', ' '; 没有在 Java 中使用额外的缓冲区、内存或集合 api?

【问题讨论】:

    标签: java arrays replace duplicates character


    【解决方案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]);
             }
    
         }
    

    【讨论】:

    • 看起来你错过了这部分问题:) shift the empty spaces to end of array
    • 它绝对适用于将空格转移到数组末尾
    • 检查这个场景char[] ch ={ 'a', 'a','c', 'd', 'b' , 'a', 'b'};
    猜你喜欢
    • 1970-01-01
    • 2019-01-14
    • 1970-01-01
    • 1970-01-01
    • 2021-02-02
    • 2019-04-29
    • 2019-11-15
    • 2020-11-09
    • 2023-02-17
    相关资源
    最近更新 更多