Java实现从一个数字中删除给定个数的数得到一个最大整数

来源:互联网 发布:经济型酒店数据分析 编辑:程序博客网 时间:2024/04/19 21:35
 import java.util.Arrays;
 import java.util.ArrayList;
 import java.util.List;
 import java.util.Collections;
 import java.math.*;
 import java.text.*;
public class Main {
     public static  List<Integer> ss= new ArrayList<Integer>();
     public static void main(String[] args) {


        String inputString = "9812332312323231223254654776878989456";
        int b=2;
        BigDecimal bigDecimal = new BigDecimal(inputString);
        String string = bigDecimal.toString();
        char[] charArray = string.toCharArray();
        List<Integer> buffer= new ArrayList<Integer>();
        // 从个位数
        for (int i=0;  i<charArray.length ; i++)
        {
         System.out.println("第" + (charArray.length - i)+"位:"+charArray[i]);
            buffer.add(Integer.parseInt(charArray[i]+""));
            ss.add(Integer.parseInt(charArray[i]+""));
        }
        System.out.println(buffer.toString());
  solution(buffer,b);
    }
    public static void solution(List<Integer> buffer,int b)
    {
      System.out.println(buffer.toString());
        Collections.sort(buffer);
        int index=0;
       System.out.println(ss.toString());
        List<String>charArray = new ArrayList<String>();
        for (int i = 0; i < b; i++)
        {
          for (int j = 0; j < ss.size()-1; j++)
         {
          if(ss.get(j)<ss.get(j+1))
          {
            ss.remove(j);
            break;
          }
         }
        }
       System.out.println(ss.toString());
    }
 
 
 }
0 0