0 0

有没比较简单高效的办法15

现有批次如下:

A1、A2、A3、A4、A5、A6
B1、B2、B3
C1
D1
E1、E2、E3、E4
F1、F2、F3
...
...

其中A1,A2这些的流水号是一样的,只是拆分成N个等量的小批次

现在问:
假设我现在一次性处理10个批次,如何让待处理的 N 个批次能最大限度地被覆盖到,也就是说,A,B,C,D,E,F...都处理最少1个批次,如果都抓取1次了,还凑不齐10个批次,那其中某个批次就抓取2个凑齐10个,例如A1,A2,B1,B2,C1,D1,E1,E1,F1,F2

求一个比较简单高效率的方法

问题补充:这里的场景是批次数据会不断补充进来的,批次是没有规律的,像池子一样,一边在注水,一边在流水

问题补充:我的场景实际上就像股票交易系统那样,A用户下了个大单,系统去处理他了,但不能全部去处理,要漏点资源给B用户,C用户的单。所以我将一个大单拆分成N个小单,然后一起处理,这样就优先级均等了。所以效率和算法上还是要尽量简单一些
2013年9月02日 14:56

4个答案 按时间排序 按投票排序

0 0

a,b,c,d,e,f,g,...N个list逐个取1个并计数剩余数量,取出的不足10个的从剩余数量最多的里面取补齐数量,如果还不足就递归取第二多的,然后就没有然后了

2013年9月04日 11:18
0 0

2种场景:
1.你列的ABCD....大于10,比如有ABCDEFGHIJKLMN
每种批次放在一个queue,10个线程分别选10个批次进行读取,选择哪个queue可以先选长度最长的10个queue。以此loop
2.你列的ABCD...小于10,比如有ABCDEFG
同样分别放在queue里,然后10个线程第一轮选取ABCDEFG,第二轮从最长的3个queue里取出,以此loop

这样的话,比较公平,不会挤压过多的批次(在某一流水线上)

2013年9月03日 17:49
0 0

任务池用一个队列,先进先出。
处理程序是10个线程队列,先进先出。
从任务队列取一个任务,如果该任务的流水号已被某个处理队列处理,则放入该队列,等待上一个相同流水号的任务处理完;如果这个任务的流水号没有被处理队列处理,则放入一个空闲的处理队列;如果所有处理队列都繁忙,则阻塞任务队列,等待有空闲的任务队列。

2013年9月03日 16:38
0 0

一定要10个覆盖A,B,C,D,E,F所有批次么?如果不用的话把A1、A2、A3、A4、A5、A6
B1、B2、B3
C1
D1
E1、E2、E3、E4
F1、F2、F3
放到一个list中,每次从list中取出10个

2013年9月02日 15:24

相关推荐

    【高清完整pdf】高效程序员的45个习惯 敏捷开发修炼之道

    本书名为《高效程序员的45个习惯 敏捷开发修炼之道》,由Venkat Subramaniam和Andy Hunt两位作者共同撰写。书中所提到的45个习惯,不仅涉及软件开发过程、编程和调试工作,还包括了开发者的个人态度、项目和团队管理...

    C#高效编程改进C#代码的50个行之有效的办法

    在《C#高效编程改进C#代码的50个行之有效的办法》这一主题下,作者分享了一系列关于如何提升C#编程效率、优化代码质量的方法。尽管提供的具体内容不多,但根据标题、描述以及部分提及的信息,我们可以推断出文章可能...

    高效C/C++编程

    ### 高效C/C++编程知识点详述 #### 前言:软件质量的重要性 - **背景介绍**:本文档由林锐博士撰写,旨在强调软件质量的重要性,并为C/C++程序员提供一套实用的编程规范。 - **目标读者**:面向所有C/C++程序员,...

    简易工程施工进度管理办法1.pdf

    【简易工程施工进度管理办法】是针对在建工程项目管理中如何有效控制和管理工程进度的重要文档,旨在确保工程按计划工期完工,保障投资方的利益。工程进度管理涵盖了从项目启动到竣工的各个阶段,包括规划、实施、...

    笨办法学 Python(第四版)

    《笨办法学 Python(第四版)》是一本深受初学者喜爱的 Python 入门教程,其主要内容涵盖了 Python 编程的基础知识,旨在帮助新手通过实践掌握编程技能。书中的每章都精心设计了一系列的练习,鼓励读者动手操作,从而...

    差旅费管理办法(简单版).doc

    这个简单版的管理办法旨在确保公司的公务出行既经济高效,又能满足员工的基本生活需求,同时强化公司的廉政建设。 首先,差旅费主要包括四类:交通费、住宿费、膳食补贴费和临时出差补贴。交通费和住宿费在规定的...

    最简单快捷的手机投屏到电脑办法

    ### 最简单快捷的手机投屏到电脑办法 在数字化时代,屏幕共享已成为日常生活与工作中不可或缺的一部分。无论是家庭娱乐、远程教育还是商务会议,高效的屏幕共享技术都能够极大地提升沟通效率及用户体验。本文将详细...

    用CAB发布OCX的简单办法

    ### 用CAB发布OCX的简单办法 #### 一、引言 在软件开发领域,尤其是Web应用程序中,ActiveX控件(OCX文件)的使用非常普遍。为了简化OCX文件的分发与安装过程,将其压缩为CAB文件成为了一种流行的解决方案。本文将...

    公车运行监督管理办法.doc

    《公车运行监督管理办法》是针对公车管理的一项重要规章制度,旨在确保公车的安全、高效运行,同时防止公车私用等不当行为。该办法详细规定了车辆管理、维修管理和保洁管理的各项细则。 在车辆管理方面,办法强调了...

    软件团队绩效考核及激励试行办法.doc

    可操作性和低成本,确保考核过程简单高效且信息获取成本低;整体与个人相结合,平衡团队与个人的贡献;结果可运用,将考核结果作为人力资源决策的重要参考,如薪酬调整、晋升等。 考核周期采用了项目验收结合年度...

    c++高效编程.doc

    **5.2 CONST与#DEFINE的比较**:CONST和宏定义在使用上有区别,CONST更安全且易于调试。 **5.3 常量定义规则**:常量的定义应遵循一定的规则,如命名习惯。 **5.4 类中的常量**:类中的常量通常用来表示固定值或...

    昆明市城市建筑垃圾管理实施办法和建筑垃圾资源化处理工作方案资料.pdf

    这些政策旨在解决建筑垃圾简单粗放处理带来的土地占用、环境污染、土壤结构破坏和地表沉降等问题,促进循环经济和低碳经济的发展。 该办法适用于昆明市主城四区、呈贡新区、三个开发(度假)区行政区域内建筑垃圾的...

    销售业绩管理办法(制度范本、DOC格式).doc

    首先,该办法强调了业绩管理的核心理念,它不仅是对数字的简单汇总,而是涉及到对原始资料的综合分析和研究,并且业绩管理是个体与团队整体表现的结合。这意味着,销售业绩不仅要考虑个人的销售量,还要考虑团队协作...

    软件公司项目管理办法.doc

    这个项目管理办法的核心在于建立一个高效协调的管理结构,确保项目的顺利进行,同时通过严格的立项流程控制风险和资源投入。通过项目管理中心的多层面审批和监控,公司能够对项目进行有效控制,保证项目的质量和进度...

    More Effective C#中文版 改善C#程序的50个具体办法

    《More Effective C#中文版 改善C#程序的50个具体办法》是一本针对C#编程语言的进阶指南,由业界资深专家撰写,旨在帮助开发者提升代码质量和效率。书中通过50个具体的实践建议,深入浅出地探讨了如何在C#开发过程中...

    用最笨的办法做的delphi简易计算器,10.1-10=0.1也解决了

    为了解决这个问题,这位开发者采取了一种“最笨”的办法,即通过循环乘以10来累积精度。这种方法的基本思路是,将浮点数乘以10多次,然后取整,再相减,以此来逼近准确的结果。比如,将10.1乘以10变为101,然后减去...

    中建四局项目工资分配办法.docx

    首先,办法强调了项目工资分配的基本原则,即全面贯彻项目管理规定,实行独立核算和全额承包,确保上缴,超收奖励,欠收惩罚,同时将各项经济和技术指标落实到个人,作为考核分配的依据,禁止简单的“以包代管”。...

    临时人员雇佣管理办法.doc

    第一条指出,未满十八岁的人员不得被雇用,且对于关键岗位,如财务管理、有价证券、仓储、销售、会计等,除非是简单的体力劳动或报表抄写,否则也不得雇用临时人员。这主要是出于对未成年人的保护和对企业核心工作的...

    生成配置文件最粗糙的办法

    标题中的“生成配置文件最粗糙的办法”指的是在IT开发中,初学者或在特定情况下,可能会采用简单但可能不够高效或灵活的方式来创建配置文件。在许多应用程序中,配置文件是必不可少的,它们允许用户根据自己的需求...

    jar包差异比较器

    "jar包差异比较器"的使用方式简单而高效,它允许用户选择两个不同版本的JAR文件进行对比。工具会分析两个文件中的每一个类,找出那些在新版本中有所修改的类。关键之处在于,它不仅报告哪些类发生了变化,而且还能在...

Global site tag (gtag.js) - Google Analytics