zde_z 2022-07-13 09:41 采纳率: 100%
浏览 63
已结题

如何把一个集合分成几个不等的集合

把A集合分给B和C,通过B和C的比例去分配,目前可以拿到B和C的比例并且算出他们应拿多少长度
如何把A集合根据B和C的长度分为新的集合
集合长度不固定、人数不固定、比例不固定
效果如图下

img

img

  • 写回答

2条回答 默认 最新

  • 土拨鼠1号 2022-07-13 10:28
    关注
    
    import java.io.*;
    import java.util.*;
    class test  
    {
        public static void main (String[] args) throws java.lang.Exception
        {
            List<Integer> arrayList = new ArrayList<>();
            arrayList.add(1);
            arrayList.add(2);
            arrayList.add(3);
            arrayList.add(4);
            arrayList.add(5);
            arrayList.add(6);
            arrayList.add(7);
            arrayList.add(8);
            arrayList.add(9);
            List<List<Integer>> result = averageAssign(arrayList, Arrays.asList(2, 2, 5));
            System.out.println(result);
        }
        
        public static <T> List<List<T>> averageAssign(List<T> source, List<Integer> group) {
            List<List<T>> result = new ArrayList<List<T>>();
            int count = group.size();
            for (int i = 0; i < count; i++) {
                List<T> value = null;
                value = source.subList(0, group.get(i));
                source = source.subList(group.get(i), source.size());
                result.add(value);
            }
            return result;
        }
    }
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(1条)

报告相同问题?

问题事件

  • 系统已结题 7月21日
  • 已采纳回答 7月13日
  • 修改了问题 7月13日
  • 赞助了问题酬金10元 7月13日
  • 展开全部