Algorithm 在“中写入给定数字的程序”;dd Mon yyyy“;日期格式

Algorithm 在“中写入给定数字的程序”;dd Mon yyyy“;日期格式,algorithm,date,language-agnostic,Algorithm,Date,Language Agnostic,在我最近的一次采访中,有人问了以下问题 给定一个数字,用“dd-Mon-yyyy”日期格式书写。样本输入:n=12122013;产出:“2013年12月12日”。日期格式可以是ddmmyyyy、mmddyyyy和yyyymmdd 在这个问题中,我们必须推导输入格式。如何区分ddmmyyy和yyyymmdd格式?如果输入为23051018,则可以是“1018年5月23日”或“2305年10月18日”。注意:Java中的方法签名是: static String formatNumberToDate(

在我最近的一次采访中,有人问了以下问题

给定一个数字,用“dd-Mon-yyyy”日期格式书写。样本输入:n=12122013;产出:“2013年12月12日”。日期格式可以是ddmmyyyy、mmddyyyy和yyyymmdd

在这个问题中,我们必须推导输入格式。如何区分ddmmyyy和yyyymmdd格式?如果输入为23051018,则可以是“1018年5月23日”或“2305年10月18日”。注意:Java中的方法签名是:

static String formatNumberToDate(int n)
编辑:
如果不能区分不同的日期格式,应该如何解决这个问题?这个问题是在笔试中提出的。

正如你所说的,你不能确定。仅仅这个数字并不能明确地告诉你日期的格式。以
01010101
为例:它可以用任何一种方式解释


现在我们已经解决了这个问题,我们可以考虑如何传递格式。如果签名确实必须是一个
int
作为参数,则可以将格式作为附加数字传递。每种格式对应一个数字。然后解析它并选择适当的格式。

对不起,它与任何编程语言都没有关联。面试官提供了样本方法签名作为参考。考生可以自由地用自己选择的编程语言写作。java、C++和C++标签是否应该添加?如果不想指定语言,则有标签<代码>语言不可知性< /代码>。但是如果你指定一种语言,你会得到更多的答案。由你决定。你不能在所有情况下都加以区分。