python代码如下:

import randomk = 2
arr = ["a", "b", "c", "d", "e", "f", "g", "h", "i", "j"]
every_len = int(len(arr) / k)
arr_flag = []
random_num = []
index = 0
for i in range(len(arr)):arr_flag.append(True)random_num.append(index)index += 1random.shuffle(random_num)result_arr = []
every_arr = []
index = 0
for i in range(0, len(arr) - 1, every_len):index += 1for j in range(every_len):every_arr.append(arr[random_num[i]])i += 1result_arr.append(every_arr)every_arr = []if index >= k:breakfor i in range(len(random_num) - len(result_arr) * every_len):result_arr[i].append(arr[random_num[len(arr) - 1 - i]])print(result_arr)

随便给出一个数组,分组数k=2,运行代码,得到结果如下:
[[‘b’, ‘i’, ‘g’, ‘f’, ‘e’], [‘c’, ‘a’, ‘d’, ‘h’, ‘j’]]
可以看到数组元素已被随机分为2个数组,且分组较为均匀

给一个数组,和分组数k,代码实现随机分组,尽可能平均分到每个组相关推荐

  1. C语言(CED)输出前k大的数(分治法/局部快速排序):给定一个数组,统计前k大的数并且把这k个数从大到小输出。

    )输出前k大的数(分治法/局部快速排序):给定一个数组,统计前k大的数并且把这k个数从大到小输出. [输入] 第一行包含一个整数n,表示数组的大小. 第二行包含n个整数,表示数组的元素,整数之间以一个 ...

  2. 用大顶堆取出一个数组中最小的k个数

    eg:从一亿个数中取出最小的k个数字 分析: 大顶堆满足,当前元素永远大于他的左右子树的值,非叶子节点的下标为n/2-1,左子树下标为i*2+1右子树下标为i*2+2 源码: import java. ...

  3. 吹气球问题的C语言编程,C语言怎样给一个数组中的数从大到小排序

    满意答案 #include "stdio.h" int main() { int i,j; int a[12]; for(i=1; i<=10; ++i) scanf(&qu ...

  4. 日期数据数组按实际周和实际月进行分组

    需求来源:后端返回所有时间数组和数值数组,前端按天.周.月进行统计用于图表的展示. 实现效果如下:原始数据是两个数组,date数组存放日期,value数组存放日期对应的数值,经过按周分组和按月分组输出 ...

  5. 华为笔试题 -- 多个数组按顺序合并(Java代码实现)

    华为笔试题 – 多个数组按顺序合并(Java代码实现) 题目描述: 现在有多组整数数组,需要将他们合并成一个新的数组.合并规则,从每个数组里按顺序取出固定长度的内容合并到新的数组中,取完的内容会删除掉 ...

  6. java如何实现qq分组_Android仿QQ好友列表分组实现增删改及持久化

    Android自带的控件ExpandableListView实现了分组列表功能,本案例在此基础上进行优化,为此控件添加增删改分组及子项的功能,以及列表数据的持久化. Demo实现效果: GroupLi ...

  7. C语言求一个数组中第k大的数,leetcode | Median of Two Sorted Arrays 寻找2个有序数组中第k大的值...

    There are two sorted arrays A and B of size m and n respectively. Find the median of the two sorted ...

  8. 算法12--topK求一个数组中第k大的数

    求一个数组中第k大的值 解法一: 建立一个k个元素的最大堆,首先将数组中前k个元素放入堆中,此时堆顶元素为第k大的元素,后面继续遍历数组,比较堆顶元素与数组中元素值,当数组中元素小于堆顶元素时,将堆顶 ...

  9. 第k大的数python代码_Python实现查找数组中任意第k大的数字算法示例

    本文实例讲述了Python实现查找数组中任意第k大的数字算法.分享给大家供大家参考,具体如下: 模仿partion方法,当high=low小于k的时候,在后半部分搜索,当high=low大于k的时候, ...

最新文章

  1. matlab编程实现k_means聚类(k均值聚类)
  2. 关于eclipse的注释和反注释的快捷键
  3. Android Gradle 构建工具(Android Gradle Build Tools)是什么?
  4. NR 5G NG-AP(NG接口)介绍
  5. 阿里DataV可视化大屏基本操作
  6. Java对象序列化为什么要使用SerialversionUID
  7. PMP之项目沟通管理
  8. 鸿蒙引领着未来,华为智慧屏V65图赏:鸿蒙OS引领未来
  9. 避坑!用大数据告诉你,那些被淘汰的公司,都有哪些特征?
  10. java语言基础02
  11. 简单的学习一下node吧——还在学习中~~~
  12. html5模板区别,网页设计和平面设计理念的六大区别
  13. 非root用户用bluefish保存文件时报permission denied错误解决办法(之一)
  14. sublime主题配色
  15. F28335舵机控制器(3)——第三版PCB
  16. 徒手攀登酋长岩,世界第一人!
  17. Java实现碧蓝航线连续作战
  18. 华为荣耀8x云相册不见了_华为手机云相册照片怎么恢复?这几个方法就能搞定...
  19. 世界卫生组织关于糖尿病、眼部疾病的相关数据整理
  20. 想了一个月都不知道如何开始做自媒体

热门文章

  1. c语言程序设计和windows编程区别是什么呢。
  2. bzoj 2125: 最短路 CH6402 Freda的传呼机
  3. metaq主要命令——————学习
  4. strncmp()详解
  5. perl对微信语音信息的处理,以及将语音信息合并
  6. 大数据在线分析平台--黄金眼
  7. 【新书推荐】航空维修技术手册——机体(第一卷)
  8. 历经70+场面试,我发现了大厂面试的bug,并总结其中心得
  9. 阿里云 OCR身份证识别Api 使用(一)
  10. python学习(十七) 爬取MM图片