在线程之间划分奇数数量

2023-12-24

我刚刚学习 Java 中的线程,我想按字母顺序对单词列表进行排序。我的程序读取 txt 文件中的单词并将它们放入字符串数组中。用户可以自己选择要使用多少个线程。我想将数组分割成均匀(尽可能)的块,线程可以自行排序。

所以我的问题是:

如何在线程之间尽可能均匀地分割 array.length ?我的大脑一片空白,我想不出一个聪明的方法来做到这一点。

例如:如果我有一个 array.length 为 22 和 4 个线程,在这种情况下如何给出线程; 6、6、5 和 5 块大小的数组?需要适用于给出的每个数字。

我尽力解释了,如果有不清楚的地方请询问!谢谢你!


让我以你的例子为例,因为它很容易解释。 4 个线程中有 22 个元素。

22 % 4 = 2。这给出了比其余线程多获取一个元素的线程数。

22 / 4 = 5。这给出了每个线程的最小元素数。

现在开始将数组分成 5 个元素,并将它们分别分配给一个线程,直到剩下 (22%4) 2 个线程。为它们分别分配剩余的 (5+1=6) 个元素。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

在线程之间划分奇数数量 的相关文章

  • 如何为小程序提供对文件系统写入的访问权限

    我在设置小程序的策略文件时遇到问题 我是第一次这样做 不知道如何在java中设置小程序的策略文件 实际上我想授予小程序在文件系统上写入的权限 为此我必须向小程序授予文件权限 所以我创建了一个名为 java policy 的文件 并将以下代码
  • 在 Java 中创建 T 的新实例

    在C 中 我们可以定义一个泛型class A
  • Java 中的 ExecuteUpdate sql 语句不起作用

    我正在学习如何将 SQL 与 Java 结合使用 我已成功安装 JDBC 驱动程序 并且能够从数据库读取记录并将其打印在屏幕上 我的问题发生在尝试执行更新或插入语句时 没有任何反应 这是我的代码 问题所在的方法 public static
  • 从 HttpClient 3 转换为 4

    我已经成功地对所有内容进行了更改 但以下内容除外 HttpClient client HttpPost method client new DefaultHttpClient method new HttpPost url InputStr
  • 合并两个地图的最佳实践是什么

    如何将新地图添加到现有地图 地图具有相同的类型Map
  • MongoDB java 驱动程序 3.0 在身份验证时无法捕获异常

    我超级卡住o 0 在尝试通过 Java 驱动程序进行身份验证时 存在捕获异常的问题 正如你可能会看到的Throwable类不工作 private MongoClient mongoClient private MongoDatabase m
  • 使用 HTTPServletRequestWrapper 包装请求参数

    我有一个可以验证 授权 REST 调用的过滤器 该过滤器需要访问请求参数 因此我为此编写了一个自定义 HTTPServletRequestWrapper import java util Collections import java ut
  • java swing:向 JTree 项目添加自定义图形按钮

    我想在 JTree 中的项目右侧添加一个带有小图标的附加按钮 这可以做到吗 如果是这样 怎么办 thanks Clamp 你在这方面成功了吗 我想做同样的事情 但很难让 JButton 响应用户 设置渲染器以显示按钮的过程很顺利 但所有鼠标
  • Java8:流映射同一流中的两个属性

    我有课Model带有以下签名 class Model private String stringA private String stringB public Model String stringA String stringB this
  • 如何检查日期字符串的有效性?

    在我的项目中 我需要检查日期字符串是否计算为正确的日期对象 我决定允许 yyyy MM dd 和日期格式 年 月 日 和 年 月 日 小时 分钟 我如何检查它们是否有效 我的代码为 1980 01 01 和一些奇怪的日期 如 3837 05
  • Java和手动执行finalize

    如果我打电话finalize 在我的程序代码中的一个对象上 JVM当垃圾收集器处理这个对象时仍然再次运行该方法吗 这是一个大概的例子 MyObject m new MyObject m finalize m null System gc 是
  • 从浏览器访问本地文件?

    您好 我想从浏览器访问系统的本地文件 由于涉及大量安全检查 是否可以通过某种方式实现这一目标 或使用 ActiveX 或 Java Applet 的任何其他工作环境 请帮帮我 要通过浏览器访问本地文件 您可以使用签名的 Java Apple
  • Java:一个函数有多种返回类型...可以使用泛型吗?

    为了简单起见 我有一些程序 如下所示 public String fetchValueAsString String key public DateTime fetchValueAsDateTime String key 我想要类似的东西
  • android 中的 java.net.URL ..新手问题

    我是java新手 正在尝试android开发 以下代码生成 malformedURLException 有人可以帮助我识别异常吗 任何提示都会非常有帮助 package com example helloandroid import and
  • 在 Freemarker 模板中检查 Spring 安全角色和记录的用户名

    有谁知道 freemarker 标签来检查 freemarker 文件中的 spring 安全角色和用户名 我从网络上的几个资源中发现以下代码将打印登录的用户名 但它没有打印用户名 而是打印 登录为
  • java中的预增量/后增量

    有人可以帮助我理解为什么 int i 1 int j 1 int k 1 int l 1 System out println i i System out println j j System out println k k System
  • 使用自定义比较器在 Java 中创建 SortedMap

    我想创建一个TreeMap在 Java 中具有自定义排序顺序 排序后的键是字符串 需要根据第二个字符进行排序 这些值也是字符串 示例地图 Za FOO Ab Bar 您可以像这样使用自定义比较器 Comparator
  • @Embeddable 中的 @GenerateValue

    我已将实体的 id 分离到一个单独的 Embeddable 类中 该实体如下 Entity Table name users public class Users EmbeddedId private Users pk id private
  • Android Google 地图无法在当前主题中找到样式“mapViewStyle”

    添加谷歌地图视图时 我扩展了MapView 使用xml编辑器将其添加到活动中 并将我的谷歌地图api密钥手动添加到布局xml文件中 我的权限在清单文件中允许互联网 我想知道的是 在 xml 编辑器中 我收到错误 无法在当前主题中找到样式 m
  • 你能快速告诉我这个伪代码是否有意义吗?

    我相信我的代码现在是万无一失的 我现在将写出伪代码 但我确实有一个问题 为什么 DRJava 要求我返回 if 语句之外的内容 正如你所看到的 我为 ex 写了 return 1 只是因为它问了 但是它永远不会返回该值 谁可以给我解释一下这

随机推荐

  • 如何动态从 JSON 文件获取数组

    我有 Json 文件 其中包含很多数组 我如何按名称动态获取每个人的数组 如获取参数 JSON Name Somename Lastname somelastname Address someaddress Name Somename1 L
  • WCF TLS 密码套件

    我需要指定用于传输级安全的密码套件 WCF 中的 wsHttpBinding 我首先无法确定 WCF 在 TLS 上默认使用哪种密码 更不用说设置它了 这个问题是由于大多数系统都是基于 Java 构建的环境中操作造成的 这显然允许以编程方式
  • 如何快速删除导航栏的边框?

    我一直在尝试删除 navigationBars 边框 但没有成功 我研究过 人们似乎告诉将shadowImage和BackgroundImage设置为零 但这在我的情况下不起作用 My code self navigationControl
  • 如何用C#删除xml元素?

    我是 XML 新手 在理解如何实现删除树中某些元素的解决方案时遇到问题 我已经寻找了一个解决方案并尝试了很多例子 但没有产生任何令我满意的东西 希望有人可以提供一些线索 可能真的很简单 但我错过了它 因为我刚刚开始使用 XML 示例 XML
  • IPC、域袜子、命名管道

    IPC 和 Unix 域套接字和命名管道有什么区别 我从各种书籍中得到了模糊的定义 但无法弄清楚应该在哪里使用哪个定义 两个进程相互通信的任何方式都可以被视为 IPC 的一种形式 例如 未命名管道 cat file txt grep foo
  • 错误:任务“:app:processDebugGoogleServices”执行失败。 > 请修复版本冲突

    将我的 google play 服务更新到版本 28 后 我收到此错误 我不确定为什么会发生这种情况 因为它之前工作正常 这是我的构建 gradle file apply plugin com android application app
  • C# ListView DragDrop 事件方法每次拖放执行两次

    该方法连续执行两次 并且没有明显的理由这样做 它发生在 VS2010 Express 4 0 和 VS2008 3 5 中 public GUI InitializeComponent this lvwFiles DragDrop new
  • 将 RandomAccessSlice 转换为 RandomAccessCollection

    当我们尝试从一个数组中检索一系列元素时Array 我们得到一个ArraySlice let array 1 3 5 2 let arraySlice array lt 2 elements up to index 1 1 3 我们可以把它改
  • tox多次测试,重用tox环境

    是否可以使用单个 tox 虚拟环境执行以下操作 tox envlist test pylint flake8 mypy skipsdist true testenv lint deps pylint commands pylint test
  • 如何在android中使用.csv文件?

    我正在 Android 中做一个示例测验应用程序 我使用数组来存储问题和答案 现在我希望将问题和答案存储在 csv文件 是可以解析的 csv安卓中的文件 CSV 代表逗号分隔值 wiki 上可以找到很好的解释 CSV http en wik
  • 更改 Magento 产品页面上的文本“选择一个选项...”

    我创建了一个可配置的产品 它有三个选项 color size and style 现在在产品页面中 每个选项都有默认文本 选择一个选项 在下拉菜单中 但我希望文本应该是 选择颜色 选择大小 and 选择款式 我在 app code core
  • JSONDecodeError:需要 ',' 分隔符:第 1 行第 43 列(字符 42)

    我已经在这里读过很多例子了 不幸的是 我不断收到此错误 Error json decoder JSONDecodeError Expecting delimiter line 1 column 43 char 42 json 文件 peop
  • Puppeteer:无法启动浏览器进程!产卵

    当我尝试跑步时node app js 我收到错误 该消息是无法启动浏览器进程 产卵 Users iliebogdanbarbulescu Downloads firstProject node modules chromium lib ch
  • 文件系统树形视图

    我正在使用文件系统 并且我有一个文件对象的 List 这些文件对象将文件路径作为属性 基本上 我需要在 NET 中创建一个树视图 但我很难想出执行此操作的最佳方法 因为我需要从如下列表创建树结构 C WINDOWS Temp ErrorLo
  • 连接sql中的所有列值

    如何将从 sql 查询返回的不同行的所有列值合并为一个值 这是一个例子 查询返回 FOO RES1 RES2 RES3 现在我想要得到如下结果 FOOCONCAT RES1RES2RES3 有什么方法可以在sql中做到这一点吗 In SQL
  • 如何防止 MSI 错误:正在安装另一个程序?

    我编写了一个小 PowerShell 脚本 它调用不同的 MSI 文件来安装软件 有时我从 Windows Installer 中收到以下错误 正在安装另一个程序 请等待安装完成 然后再次尝试安装该软件 在调用 MSI 文件之前如何防止此错
  • 在 servlet 中从文件系统提供静态图像文件?

    如何通过 servlet 在文件系统中提供图像文件 看看这里 示例 Depot 在 Servlet 中返回图像 http www exampledepot com egs javax servlet GetImage html 链接已损坏
  • google-apps-script 用于编辑 Gmail 主题行

    问题是这样的 你可以搜索一下 发现很多人抱怨这个问题 假设您出售某种商品 例如经营一家在互联网上销售的小企业 并使用 PayPal 接受付款 PayPal 发送的每一条付款通知均具有完全相同的主题行 收到付款通知 因此 如果您收到 Bobb
  • KitKat版本之前的Android中如何获取短信应用程序(默认)的包名?

    Android KitKat版本之后 我们可以通过 Telephony sms getDefaultSmsPackage context 找到默认的短信包名称 但是如何获取 KitKat 版本之前的包名称呢 请参考这个http androi
  • 在线程之间划分奇数数量

    我刚刚学习 Java 中的线程 我想按字母顺序对单词列表进行排序 我的程序读取 txt 文件中的单词并将它们放入字符串数组中 用户可以自己选择要使用多少个线程 我想将数组分割成均匀 尽可能 的块 线程可以自行排序 所以我的问题是 如何在线程