Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/algorithm/12.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 基于成功/失败计数和成功/失败日期获取N个最佳拟合值的算法_C#_Algorithm_Best Fit - Fatal编程技术网

C# 基于成功/失败计数和成功/失败日期获取N个最佳拟合值的算法

C# 基于成功/失败计数和成功/失败日期获取N个最佳拟合值的算法,c#,algorithm,best-fit,C#,Algorithm,Best Fit,我有一个代理服务器列表。 有一个ProxyServer项目列表。项目保存代理地址本身,成功计数,失败计数,最后成功日期,最后失败日期。 如果加载操作成功,SucceedCount将递增,如果加载失败-FailedCount。 因此,项目列表如下所示(LastFailedDate未显示): 我需要实现一个简单的算法,从这个列表中获得N个最佳代理。 最佳代理是指: 许多成功计数是好的 许多失败计数不正确 成功/失败0/0的代理优于0/10 上次成功/失败日期必须具有一定的权重,例如,具有topS

我有一个代理服务器列表。 有一个
ProxyServer
项目列表。项目保存代理
地址
本身,
成功计数
失败计数
最后成功日期
最后失败日期
。 如果加载操作成功,
SucceedCount
将递增,如果加载失败-
FailedCount
。 因此,项目列表如下所示(
LastFailedDate
未显示):

我需要实现一个简单的算法,从这个列表中获得N个最佳代理。 最佳代理是指:

  • 许多
    成功计数
    是好的
  • 许多
    失败计数
    不正确
  • 成功/失败0/0的代理优于0/10
  • 上次成功/失败日期必须具有一定的权重,例如,具有top
    SucceedCount
    /
    FailedCount
    10000/100的代理,但
    lastsuceeddate
    一个月前的代理就足够糟糕了
我希望你想到了在那一刻得到最好的N代理。我想对于这样的任务有一些已知的算法。看起来算法本身可能类似于
.OrderBy()


SucceedCount
FailedCount
LastSucceedDate
LastFailedDate
字段​​可被任何其他文件替换、删除或删除​​可能还有其他人的补充,我只需要实现目标的方法。

什么更好:1000/1或0/0?500/1或10/0?:)我想说的是,排名的问题不是算法本身,而是你认为是一个预期的结果。因此,您要做的第一件(也是最困难的)事情是创建一组坚实的测试用例。在那之后,几乎所有的算法都能工作。如果您决定手工编写算法(在这种情况下应该很容易),我建议使用两两排序:write comparator,它接受代理服务器对的特征向量,并返回布尔值哪个更好。否则,请查看以获取有关高级方法(例如SVM)的信息@gudok,好的,谢谢您的有用指导!我将深入探讨。你可以研究在线新闻聚合器(reddit等)通过投票采取的各种方法-将
成功
映射为向上投票,将
失败
映射为向下投票,你的“最佳代理方式”列表看起来很像reddit post排名。