【发布时间】:2012-11-07 21:25:35
【问题描述】:
我今天有一个面试,我被要求对一个包含字符串和整数的列表进行排序。就像这样
输入:
汽车巴士 4 -5 苹果 3 -1
输出:
苹果巴士 -5 -1 车 3 4
起初我被卡住了,因为我从未见过这样的事情,但我试图做的是创建 2 个子列表,一个包含字符串,另一个包含 int。我这样做了,但时间已经到了我无法完成。
我也卡在了我试图循环遍历列表并检查它的字符串是否比将元素添加到子列表 1 以及它的 int 是否比将元素添加到子列表 2 的部分。我被困在这里,因为我不知道怎么能我检查元素是字符串还是整数。
如果我在错误的部分或其他地方发布了这个问题,也很抱歉。请随时将此问题移至正确的部分。
谢谢
【问题讨论】:
-
Re: 检查 string 还是 int: 尝试解析它?什么是“更高”、数字或字符串?输入是怎么来的,都是字符串?
-
我要向面试官指出的第一件事是
-1也是一个字符串......然后我会讨论区分差异的方法(可能尝试解析它和try/catch (NumberFormatException e)...) -
@DaveNewton 解析正是我想到的。他向我展示了我上面写的输出我想他希望我在排序时优先考虑单词而不是数字。他什么也没说关于输入是如何来的。他说它是字符串和整数的组合。感谢您的回复。
-
@durron597 解析出现在我的脑海中,但我认为我失去了它,因为时间即将结束并且我承受着压力:) 我认为每次尝试解析每个元素都需要很多时间那么还有其他方法吗?感谢您的回复。
-
为什么是
-1 -5?在输出中应该是-5 -1
标签: java algorithm list sorting collections