gpt4 book ai didi

language-agnostic - 用于存储重复事件的数据结构?

转载 作者:行者123 更新时间:2023-12-03 08:56:36 26 4
gpt4 key购买 nike

我正在寻找一种用于存储重复事件的数据结构模式,但是我想到的一切都会导致大量的特殊情况处理或用户输入,并且数据检索过于复杂。 (我有一种明显的感觉,就是我对问题域的理解不够深,无法做到这一点。)

如何存储Outlook样式的重复事件?

  • 每天早上8点
  • 一个月中的每个第一个星期二
  • 三年的每年12月1日
  • 每周每两个小时
  • ...
  • 最佳答案

    有许多论文描述了此用例的数据结构和算法。此外,您还可以看到crontabQuartz(Java)或Quartz.NET(.NET)的开源实现的代码或描述。

    这是一篇这样的论文

    http://portal.acm.org/citation.cfm?id=359763.359801&coll=ACM&dl=ACM&CFID=63647367&CFTOKEN=55814330

    例如,cron这样存储信息(*表示每个,因此month以下的*表示每个月)

    .----------------分钟(0-59)
    | .-------------小时(0-23)
    | | .----------每月的某天(1-31)
    | | | .------- month(1-12)OR jan,feb,mar,apr ...
    | | | | .----星期几(0-6)(星期日= 0或7)或星期日,星期一,星期二,星期三,星期四,星期五,星期六
    | | | | |
    * * * * *

    有几个特殊条目,其中大多数只是快捷方式,
    可以用来代替指定完整的cron条目:

    条目描述等效于
    @reboot在启动时运行一次。没有
    @yearly每年运行一次0 0 1 1 *
    @每年(与@yearly相同)0 0 1 1 *
    @monthly每月运行一次0 0 1 * *
    @weekly每周运行一次0 0 * * 0
    @daily每天运行一次0 0 * * *
    @midnight(与@daily相同)0 0 * * *
    @hourly每小时运行一次0 * * * *

    关于language-agnostic - 用于存储重复事件的数据结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1548031/

    26 4 0
    Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
    广告合作:1813099741@qq.com 6ren.com