求职算法

时间:2013-05-05 12:25:44

标签: algorithm search

我的问题对我来说似乎很简单,但我无法将其分解为能够将其编入游戏的基本要素。

首先,不同的职业需要不同的技能,这些技能包含在课程Person中。我有world map我可以要求所有空楼,从而找到所有可用的工作。

根据这些信息,我想根据玩家可以修改每个职业的一些权重来计算填补某个职位的重要性。

所以我当前的方法就像这个伪代码:

    Job findJob(wm : WorldMap) {
      Queue priority <- empty;
      for each building {
        queue.add(skill * need);
      }
      return prority.max();
    }

这听起来效率低效愚蠢吗?或者您认为我认为应该注意哪些特殊情况?

2 个答案:

答案 0 :(得分:0)

由于您只想找到最大的建筑物,因此您不需要任何队列。只需将当前最大值保留在变量中,并在找到更好的变量时替换它。

答案 1 :(得分:0)

  Probably this would be another pseudo code which may help:

  Job findJob(wm : WorldMap) {
  for each portals from job portal1 to http://9kriwala.com
  Queue priority <- empty;
  for each building {
    queue.add(skill * need);
  }
  return prority.max();
  }