Microsoft的考验――查找第二大的数
摘要:
描述
Microsoft是yy梦想的天堂,可要想进入Microsoft,得过面试关,且看:
主考官:请在O(n)时间内找出一个线性表内第二大的数。而且只能从左到右遍历一遍。
yy:啥叫O(n)时间?
主考官:........#(*&@#*(&%5E$*&@#*(&^$)*&(@*!!!,就是你只能遍历线性表一次,就把第二大的数给找出来...
输入
第一行为一个整数T,表示有T组数据。每组数据有两行:第一行是一个整数n ,表示线性表有n个元素;第2行有n个以空格隔开的整数,即线性表中每个元素的值。
n不大于1,000,000。
输出
共T行,输出对应的每组数据中第二大的数。如果第二大的数不存在,请输出None。
样例输入
2
4
1 2 3 3
4
2 2 2 2
样例输出
2
None
提示
测试数据较大,且时间较严,请考虑只扫描一遍的算法 阅读全文
posted @ 2019-09-02 15:48 随便看看—— 阅读(259) 评论(0) 推荐(0)
浙公网安备 33010602011771号