笔试题 |
您所在的位置:网站首页 › 股市开盘日期查询 › 笔试题 |
今天记录一道笔试题
1.原题:
需求: 股票交易或者分析会涉及到交易日的查询,为了分析高效快速,通常会把交易日放到内存中。要求实现下面的接口。 interface TradingDayService { //判断是否为交易日 boolean isTradingDay(LocalDate date); //查询下一个交易日 Optional queryNextTradingDay(LocalDate date); //查询一段时间范围的交易日, 注意包括[from, to] List queryBetween(LocalDate from, LocalDate to); //查询日期所属月份的第一个交易日 Optional queryFirstTradingDayOfMonth(LocalDate date) }要求如下: 1 请用Java,Scala,Kotlin任意一种语言实现。 2. 访问速度足够快。 3. 尽量少占内存。 4. 有单元测试。 2.样本:(这里我只是列举了部分数据,完整的数据是一整年的数据。)“2020-01-02”, “2020-01-03”, “2020-01-06”, “2020-01-07”, “2020-01-08”, “2020-01-09”, “2020-01-10”, “2020-01-13”, “2020-01-14”, “2020-01-15”, “2020-01-16”, “2020-01-17”, “2020-01-20”, “2020-01-21”, “2020-01-22”, “2020-01-23”, “2020-02-03”, “2020-02-04”, “2020-02-05”, “2020-02-06”, “2020-02-07”, “2020-02-10”, “2020-02-11”, “2020-02-12”, “2020-02-13”, “2020-02-14”, “2020-02-17”, “2020-02-18”, “2020-02-19”, “2020-02-20”, “2020-02-21”, “2020-02-24”, “2020-02-25”, “2020-02-26”, “2020-02-27”, “2020-02-28”, “2020-03-02”, “2020-03-03”, “2020-03-04”, “2020-03-05”, “2020-03-06”, “2020-03-09”, “2020-03-10”, “2020-03-11”, “2020-03-12”, “2020-03-13”, “2020-03-16”, “2020-03-17”, “2020-03-18”, “2020-03-19”, “2020-03-20”, “2020-03-23”, “2020-03-24”, “2020-03-25”, “2020-03-26”, “2020-03-27”, “2020-03-30”, “2020-03-31”, “2020-04-01”, “2020-04-02”, “2020-04-03”, “2020-04-07”, “2020-04-08”, “2020-04-09”, “2020-04-10”, “2020-04-13”。 3.解决思路:(1)找数据规律 我们首先观察每个月的数据,查看交易日样本数据是否有规律。可以发现,毫无规律可言。。。 (2)认真阅读需求,提炼要点 读题,看要求,要求主要有两点:速度快、占内存少。任务就是实现这个TradingDayService接口的四个方法。看接口的参数、发现主要是对LocalDate运用的考察。 (3)如何存储样本数据: 第一种:交易日数据主要是用于查询,变动情况很好,考虑到要占用内存少,其实我们可以把这些样本数据存入redis里(实际开发用的比较多)。 第二种:使用一个单例来存储数据,该样本数据就只会占用一块内存空间。(其实在实际开发中,单例专门用于存储数据的情况很少,除非要用到该数据的多个处理方法,才会使用单例封装该数据和处理方法) 第三种:直接使用一个静态的集合,来存储。 采用:因为题目中,没有说明可以使用redis,所有我个人采用了单例模式来存储该数据。数据的存储,大家根据实际的需求来看。 5.话不多说,直接上代码单例类 package singleton; import java.time.LocalDate; import java.util.ArrayList; import java.util.Arrays; import java.util.List; public class TradingDayDataSingleton |
今日新闻 |
点击排行 |
|
推荐新闻 |
图片新闻 |
|
专题文章 |
CopyRight 2018-2019 实验室设备网 版权所有 win10的实时保护怎么永久关闭 |