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

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

把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日
  • 展开全部

悬赏问题

  • ¥15 centos7.9 IPv6端口telnet和端口监控问题
  • ¥120 计算机网络的新校区组网设计
  • ¥20 完全没有学习过GAN,看了CSDN的一篇文章,里面有代码但是完全不知道如何操作
  • ¥15 使用ue5插件narrative时如何切换关卡也保存叙事任务记录
  • ¥20 海浪数据 南海地区海况数据,波浪数据
  • ¥20 软件测试决策法疑问求解答
  • ¥15 win11 23H2删除推荐的项目,支持注册表等
  • ¥15 matlab 用yalmip搭建模型,cplex求解,线性化处理的方法
  • ¥15 qt6.6.3 基于百度云的语音识别 不会改
  • ¥15 关于#目标检测#的问题:大概就是类似后台自动检测某下架商品的库存,在他监测到该商品上架并且可以购买的瞬间点击立即购买下单