【发布时间】:2015-03-19 14:19:10
【问题描述】:
我有这个问题要做:
使用递归编写一个函数来执行以下操作:您是一家小工厂的经理。你有 7 名工人和 7 份工作要做。每个工人被分配一份且只有一份工作。每个工人对每项工作都要求不同的报酬。 (例如:工人 Archie 要求焊接 10 美元,木工要求 15 美元等。工人 Jughead 要求焊接 12 美元,木工要求 5 美元等)找到最适合您的工作分配。
我创建了这八个关于每个工人的需求量的类: 一个可能不必要的超类
public class Workers
{
public int doCarpentry()
{return 0;}
public int doWelding()
{return 0;}
public int doMechanic()
{return 0;}
public int doCleaning()
{return 0;}
public int doDishes()
{return 0;}
public int doPlumbing()
{return 0;}
public int doCashier()
{return 0;}
}
其他七个都是这样的:
public class Jennifer extends Workers
{
public int doCarpentry()
{return 10;}
public int doWelding()
{return 10;}
public int doMechanic()
{return 12;}
public int doCleaning()
{return 12;}
public int doDishes()
{return 8;}
public int doPlumbing()
{return 9;}
public int doCashier()
{return 10;}
}
public class Linda extends Workers
{
public int doCarpentry()
{return 9;}
public int doWelding()
{return 13;}
public int doMechanic()
{return 10;}
public int doCleaning()
{return 9;}
public int doDishes()
{return 12;}
public int doPlumbing()
{return 14;}
public int doCashier()
{return 9;}
}
我正在尝试创建一个 Manager 类,但我完全糊涂了。我什至不知道从哪里开始,特别是因为我需要使用递归。请帮忙!
【问题讨论】:
-
没有必要为每个员工创建一个类型。什么时候你会有 200 名员工?每次雇用某人时都必须编译会很无聊。
-
这个问题的递归意味着创建一个函数来返回所有可能的(7!)工人/工作组合,从而通过“蛮力”解决问题。关于课程,我不明白你为什么需要创建一个经理课程,工人和工作课程是engouh