面试题,凑14,将数组中相加为14的数去除,并升序排列
面试题,凑14,将数组中相加为14的数去除,并升序排列
Dreamer91 发表于2年前
面试题,凑14,将数组中相加为14的数去除,并升序排列
  • 发表于 2年前
  • 阅读 8
  • 收藏 0
  • 点赞 0
  • 评论 0

腾讯云 技术升级10大核心产品年终让利>>>   

 package com.codemo;

public class TestCase {
 public static final Integer[] a = new Integer[]{9,9,1,5,7,13};
 public static void main(String[] args) {
  //计算消除的次数
  int count = 0;
  
  for( int i = 0; i < a.length - 1 ; i ++ ){
   for( int j = i + 1; j < a.length ; j ++ ){
    if( (a[i] != null && a[j] != null) &&( a[i] + a[j] == 14) ){
     a[i] = null;
     a[j] = null;
     count++;
    }
    
   }
   
  }
  
  Integer[] tmp = new Integer[a.length - (count * 2)];
  //局部变量
  int c = 0;
  for( Integer i : a ){
   if( i != null )
    tmp[c++] = i;
  }
  
  sort(tmp);
 }
 
 
 //冒泡排序
 public static void sort( Integer[] src ){
  for( int i = 0 ;  i < src.length - 1; i ++ ){
   for( int j = 0; j < src.length - 1 -i ; j++ ){
    if( src[j] > src[j+1]  ){
     Integer tmp = src[j];
     src[j] = src[j+1];    
     src[j+1] = tmp;
    }
   }
  }
  
  
  for( Integer i : src ){
   System.out.print(i+" ");
   
  }
 }
}

共有 人打赏支持
粉丝 3
博文 3
码字总数 495
×
Dreamer91
如果觉得我的文章对您有用,请随意打赏。您的支持将鼓励我继续创作!
* 金额(元)
¥1 ¥5 ¥10 ¥20 其他金额
打赏人
留言
* 支付类型
微信扫码支付
打赏金额:
已支付成功
打赏金额: