`

基于权重的资源分布算法实现

 
阅读更多

提纲:
一、背景

二、思路

三、实现

 

 

一、背景

有的时候需要根据各种类型占用的权重来分配某种资源。如何将权重来用代码来体现呢?我觉得是个概率问题,权重越高的,在某一次资源分配的时候,能占用到资源的可能性就越高。如何用代码来表达呢?

 

二、思路

设想如下场景,我们将权重用百分比来表示,设想资源是一百份,权重为5%,则占用5份。

 

三、实现

 

   /**
     * 模拟基于权重的随机分布算法
     * 
     * @param args
     */
    public static void main(String[] args) {

        //100个字母装在容器组数里面,A1%  B%20  C%5  D%4  E%70  ,对应相应的5个权重
        List<String> weightArray = new ArrayList<String>();
        for (int i = 0; i < 20; i++) {
            weightArray.add("B");
        }

        for (int i = 0; i < 70; i++) {
            weightArray.add("E");
        }

        weightArray.add("A");
        weightArray.add("C");
        weightArray.add("C");
        weightArray.add("C");
        weightArray.add("C");
        weightArray.add("C");
        weightArray.add("D");
        weightArray.add("D");
        weightArray.add("D");
        weightArray.add("D");

        //获取随机数[0-99]
        int count = 0, countA = 0, countB = 0, countC = 0, countD = 0, countE = 0;
        while (true) {
            ++count;
            int index = new Random().nextInt(100);
            String s = weightArray.get(index);

            if ("A".equals(s)) {
                ++countA;
            } else if ("B".equals(s)) {
                ++countB;
            } else if ("C".equals(s)) {
                ++countC;
            } else if ("D".equals(s)) {
                ++countD;
            } else if ("E".equals(s)) {
                ++countE;
            }

            if (count % 100 == 0) {
                System.out.println("countA:" + countA + "countB:" + countB + "countC:" + countC
                                   + "countD:" + countD + "countE:" + countE);
                System.out.println("-----------------------------------------------");
                countA = 0;
                countC = 0;
                countB = 0;
                countD = 0;
                countE = 0;
            }
        }
    }
}

 

  不多解释了,自己看,,,

分享到:
评论

相关推荐

    Ngnix权重选择算法Java实现

    通过以上步骤,我们可以实现一个基于Java的Nginx权重选择算法。这个算法可以帮助我们更好地管理后端服务器的负载,提高系统的整体稳定性和响应速度。在实际应用中,还可以结合其他策略,如健康检查、故障恢复等,...

    权重剪枝-基于Pytorch实现的算法权重剪枝-算法优化-附项目源码-优质项目实战.zip

    本项目是基于Pytorch框架实现的权重剪枝算法,旨在帮助开发者理解和实践这一技术。 在深度学习模型中,权重参数的数量巨大,可能导致模型过拟合或者计算资源需求过高。权重剪枝的目标是识别并删除那些对模型性能...

    基于权重粒子群算法的工件铣削温度研究.pdf

    【基于权重粒子群算法的工件铣削温度研究】这篇论文深入探讨了在铣削加工过程中工件温度分布的规律。铣削是一种常见的金属切削工艺,而在这种工艺中,工件的温度控制至关重要,因为它直接影响到加工精度、刀具寿命和...

    【路径规划】基于蚁群算法实现无人机路径规划matlab源码.zip

    【路径规划】基于蚁群算法实现无人机路径规划的MATLAB源码是一个研究和学习路径优化问题的重要资源。蚁群算法,又称ACO(Ant Colony Optimization),是受蚂蚁寻找食物过程中发现最短路径行为启发的一种全局优化算法...

    基于高斯函数递减惯性权重的粒子群优化算法.pdf

    高斯函数递减惯性权重的粒子群优化算法(GDIWPSO)是一种基于高斯函数的粒子群优化算法,利用高斯函数的分布性、局部性等特点,实现了对惯性权重的非线性调整。在仿真过程中,首先对测试函数优化以确定惯性权重的...

    基于动态改变权重粒子群算法的球度误差评定.pdf

    基于动态改变权重粒子群算法的球度误差评定 本文讨论了基于动态改变权重粒子群算法(PSO)对球度误差的评定。球度误差是指球形工件在制造过程中的几何形状误差,该误差会对产品的性能和质量产生很大的影响。因此,...

    基于社交网络推荐算法

    - **基于邻域的推荐算法实现**:通过计算用户的好友对某项物品的喜好程度,并结合好友与用户的关系强度,生成推荐列表。 - **算法的缺陷**:这种方法需要大量历史数据,且难以实现实时更新。为了解决这个问题,可以...

    一种基于权重的云服务搜索算法.pdf

    为解决这一问题,研究人员提出了基于权重的搜索算法,目的是帮助开发者更准确、高效地发现并选择合适的云服务实例。 当前,服务发现和服务组合算法已经在Web服务领域得到广泛应用,而这些算法大多基于服务质量(SLA)...

    基于最小均方 (LMS) 算法实现线性信道估计附matlab代码.zip

    本资源提供的MATLAB代码实现了LMS算法在频率域内对线性信道进行估计的过程。下面将详细阐述LMS算法的基本原理、信道估计的重要性以及MATLAB代码在实现中的关键步骤。 1. **LMS算法基本原理**: LMS算法是Steele和...

    基于深度学习的权重自适应的图像去噪算法matlab实现版本

    本项目提供了一个基于深度学习的权重自适应图像去噪算法的MATLAB实现版本,这为图像处理的研究者和工程师提供了强大的工具。 首先,我们要理解深度学习的基本概念。深度学习是一种机器学习方法,通过模拟人脑神经...

    Storm环境下基于权重的任务调度算法.pdf

    为此,文章提出了一种基于权重的任务调度算法(TSAW-Storm)来优化这一状况。 TSAW-Storm算法的核心思想是依据任务的CPU资源占用和数据流大小来确定任务的权重。在计算权重时,算法考虑了每个任务在拓扑中的计算...

    基于自适应权重粒子群算法的脱硝系统建模.pdf

    【基于自适应权重粒子群算法的脱硝系统建模】 在当前环保政策的严格要求下,燃煤机组对氮氧化物(NOx)排放的控制变得至关重要。传统的比例积分微分(PID)控制器在应对选择性非催化还原技术(SNCR)脱硝系统中的大...

    基于内容和标签权重的混合推荐算法.pdf

    5. 基于内容和标签权重的混合推荐算法的原理和实现 6. 推荐算法的时间复杂度和空间复杂度 7. 推荐系统的评估指标和方法 资源链接: 1. Liu Yu, Zhu Wenhao. A Hybrid Recommendation Algorithm Combination of ...

    基于不平衡权重和分布更新规则的粒子群算法.pdf

    本文中提到的“基于不平衡权重和分布更新规则的粒子群算法”(Particle Swarm Optimization Algorithm Based on Update Rules of Unbalanced Weights and Distributions)是为了解决标准PSO的种群多样性保持和进化...

    基于梯度强化学习算法(Matlab代码实现)

    在本资源中,提供的是基于Matlab的梯度强化学习算法实现,这对于理解和实践这种算法提供了直观的平台。 在强化学习中,智能体通过与环境的交互来学习最优策略,以最大化长期奖励。传统的强化学习算法如Q-learning或...

    基于权重的朴素贝叶斯分类器设计与实现.pdf

    ### 基于权重的朴素贝叶斯分类器设计与实现 #### 摘要解析与核心知识点 本文探讨了一种改进的朴素贝叶斯分类器设计,特别关注于通过引入词条权重来优化先验概率的计算。朴素贝叶斯分类器作为文本分类中的重要工具...

    【SVR预测】基于差分进化算法优化SVR实现数据预测附matlab代码.zip

    【标题】"【SVR预测】基于差分进化算法优化SVR实现数据预测附matlab代码.zip" 提供了一个利用支持向量回归(Support Vector Regression, SVR)进行数据预测的实例,其中优化过程采用了差分进化算法。该资源特别适合...

Global site tag (gtag.js) - Google Analytics