当前位置: 首页 > 面试题库 >

Java中间隔重复算法的开放源代码实现

井学
2023-03-14
问题内容

我从事的项目中,间隔重复是必不可少的,但是我不是该主题的专家,因此我害怕重新发明方形齿轮。我的研究为我指出了两个不同的系统,即Leitner系统和SM系列算法。
我尚未决定哪种系统最适合我的项目。如果要采用SM定位,我想我会尝试实现类似于Anki所使用的东西。

我最好的选择是使用现有的Java库。这可能非常简单,我所需要的只是计算下一次重复的时间。
有人听说过这样的倡议吗?


问题答案:

我没有看过Anki的实现,但是您看到了吗?问答我一个Java中的SRS。

基本上是这样的

public static void calcuateInterval(Card card) {
  if (card.getEFactor() < 3) {
      card.setCount(1);
  }
  int count = card.getCount();
  int interval = 1;
  if (count == 2) {
      interval = 6;
  } else if (count > 2) {
     interval =  Math.round(card.getInterval() * card.getEFactor());
  }
  card.setInterval(interval);
}

如果您真的想要Anki的算法,请查看Github中提供的Android中Anki的源代码。虽然是GPL,所以您可能需要购买许可证。



 类似资料:
  • 问题内容: 我在不同的时间间隔中对某些值进行了分类。多数格式为[20-30],但有些格式为[30-infinite]。 您是否知道可以表示的间隔类: 双方都不封闭的间隔(例如(0-5)或[0-5)) 在无限时关闭(或开始)的时间间隔 问题答案: Time&Money项目似乎具有您需要的Interval类。 请在svn:interval包中查看这些文件。

  • 我已经在一个Java项目上工作了一段时间,在公开下载之前,我想添加一个需要连接MySQL数据库的功能。我的问题很简单:如果代码是开源的,我将如何将密码隐藏到数据库中?

  • 我对源代码中的密码有一个问题。例如,如果你想连接到FTP服务器,你必须在源代码中以纯文本形式写入密码。这安全吗?或者可以反编译JAR文件或Android APK文件,以获取纯文本格式的数据吗?有没有安全的方法来存储数据?

  • 有多个重复的时间间隔,从开始时间到结束时间。每个间隔由重复的开始时间、结束时间(直到重复将要继续的点)、持续时间(当它处于活动状态且可以重叠时)和持续时间定义。 采样间隔: 重叠间隔:如果两个重复序列的开始和结束时间范围内有重叠的开启时间(x),则称其为重叠。 问:这样的间隔有几十次。提供了一个由相同参数(startTime、endTime、onDuration、offDuration)定义的新重

  • 我试图弄清楚为什么Java的BigInteger乘法基准比使用从BigInteger.java源代码复制到我的项目中的实例要快3倍。使用jmh运行基准测试。下面是一个示例输出,注意加法的运行大致相同。

  • 本文向大家介绍Java中equals()方法重写实现代码,包括了Java中equals()方法重写实现代码的使用技巧和注意事项,需要的朋友参考一下 Java中equals()方法重写实现代码   Java中的equals()方法是在Object类中定义,Object类是所有类的父类。换句话说,任何类都隐含地继承了该方法。判断两个对象的内容是否相同,必须使用equals()方法,对于没有重写该方法的