员工入围

时间:2011-03-11 06:59:42

标签: java php algorithm programming-languages evolutionary-algorithm

我有n个队列中的东西,我必须找到针对开放标准类别C {X,Y Z)的最佳可能的东西(这里X,Y,Z是C变体)。在时间复杂度最低的情况下,最佳建议的通用算法是什么?

例如:

让我们说一家公司在C ++,C,银行领域,STL,5 - 10年...等等。 100人申请了同一职位。有些在C中有exp,有些在C ++中有Java,有些有C,C ++,电信域......等等。我的问题是:如何找到最好的员工?如何对它们进行排名?

3 个答案:

答案 0 :(得分:1)

您可能需要某种词干,它会将每个标准词转换为规范标准词,以使标准更好地匹配。

例如:

  • 银行=>银行
  • Banks =>银行
  • 银行业务=>银行
  • 金融业=>银行
  • Java =>爪哇
  • JSE => Java + Swing
  • J2SE => JSE => Java + Swing
  • RHEL => RHEL + linux

我从Lucene英语词干开始,然后扩展它。

答案 1 :(得分:1)

粗略的想法,

将公司要求视为搜索向量,并恢复为要排名的文档。

  • 为每个要求元素赋予权重(C ++:100,C:80,12yrs:120,10yrs:100,8yrs:80,5yrs:0等)
  • 根据权重计算每份简历的得分。
  • 根据得分对降序进行排序。

微调选择,   - 给予候选人的位置和工作地点权重  - 现有员工   - 当前的CTC /预期的CTC   - 将分数与其他候选人/创造百分位数标准化

使用洞察力(如果你真的想将公司候选人出售给公司),   - 根据公司选择的候选人类型加权   - 对活跃的候选人加权,如何找到他们? - 另一个问题:)

答案 2 :(得分:0)

我目前没有真正的算法,但计算排名的方法可能是计算每个员工与工作标准相同的项目数,并将其与总数相关联。项目。例如:如果作业具有以下标准:Java, SQL, PHP(3项)且emplyoyee只有PHP和Java(2项)中的exp,则r可以计算为:r = (employee_items) / (total_items) = 2 / 3
您还可以为作业说明中的每个项目添加权重,以识别更重要的项目。所以也许Java很重要 - 它得到1.5,SQL正常 - 1和PHP不太重要0.8。然后employee_items可能是1.5 * 1 + 0.8 * 1

这是我尝试开始的方式