• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

用贪心算法解决最优服务次序问题,即顾客平均所等待的时间最少

武飞扬头像
LNORA
帮助1

最优服务次序问题

问题描述

假设有n个顾客同时等待一项服务。顾客i需要的服务时间为ti,1<=i<=n,应如何安排n个顾客总的等待时间达到最小?总的等待时间是每个顾客等待服务时间的总和。并计算顾客的平均等待时间。

  1.  
    package 算法设计与分析;
  2.  
     
  3.  
     import java.lang.reflect.Array;
  4.  
     import java.util.Arrays;
  5.  
     import java.util.Scanner;
  6.  
     //根据分析,若要使得顾客等待的时间最短,就需要每个顾客等待的时间最短,可以使用贪心算法,即使用短作业优先的方式进行服务,因此需要对顾客所需要的服务时间进行升序排序,然后计算出每一个顾客所需要的等待时间,并进行累加,最后计算出顾客的平均等待时间。
  7.  
     public class 最优服务次序问题 {
  8.  
        public static void main(String[] args) {
  9.  
            Scanner inScanner = new Scanner(System.in);
  10.  
            System.out.print("请输入排队顾客数:");
  11.  
            int n = inScanner.nextInt();//排队人数
  12.  
            int[] a = new int[n 1 ];
  13.  
            System.out.print("请输入每位顾客所需时间:" " ");
  14.  
            for (int i = 1; i <= n; i ) {
  15.  
                a[i] = inScanner.nextInt();
  16.  
            }
  17.  
            System.out.print("对服务时间进行排序后为:");
  18.  
            Arrays.sort(a);//对a数组里的元素从小到大排序
  19.  
            //System.out.print("对服务时间进行排序后为:");
  20.  
            for (int x = 1; x< a.length; x ) {//输出排序好的元素
  21.  
     
  22.  
                System.out.print(a[x] " ");
  23.  
            }
  24.  
            System.out.println();//换行
  25.  
            Solve(n,a);
  26.  
        }
  27.  
        public static void Solve(int m,int a[]) {
  28.  
            float sum = 0;
  29.  
            for (int y = 1; y < m; y ) {
  30.  
                a[y 1] = a[y] a[y 1];//后面顾客的等待时间
  31.  
            }
  32.  
            for (int y = 1; y < m; y ) {
  33.  
                sum = a[y];//将每个人的等待时间加起来,及等待时间和
  34.  
            }
  35.  
            System.out.println("平均服务时间为:" sum/m);
  36.  
        }
  37.  
     }
学新通

运行结果

学新通

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhgehhhh
系列文章
更多 icon
同类精品
更多 icon
继续加载