如何在数组中快速找到一个值

u010634579 2015-04-02 11:14:06
昨天去面试,面试官问我如何在数组中快速找到一个值,我说用循环,结果他说效率太低,如果数组中包含的值有很多,有什么能快速找到其中某个值得办法么?
...全文
575 8 打赏 收藏 转发到动态 举报
写回复
用AI写文章
8 条回复
切换为时间正序
请发表友善的回复…
发表回复
john_QQ:2335298917 2015-04-02
  • 打赏
  • 举报
回复
有序的数字跟无序的数字,为了效率,查找的算法是不一样的,当然,如果不计较效率,循环遍历也没错
本拉灯 2015-04-02
  • 打赏
  • 举报
回复
引用 5 楼 u010634579 的回复:
[quote=引用 3 楼 wyd1520 的回复:] 无非让你用什么 二分什么的查找法,不过我一般会直接回答,我直接用LINQ查找,至于说慢我试过了100W记录,最多也只用个几毫秒。
我说用linq了,他说用别的方法,估计是要我回答二分法,可惜我昨天还不知道这个知识点啊[/quote] 我之前面试别人也有问类拟的问题,不过我还是按上面的回答。因为开发讲究的是效率,用算法只有在特定的情况下才去用的。 所以你面试前你要先了解所面的公司是做什么的。如果只是一般的软件开发,你回答用LINQ没什么的。
u010634579 2015-04-02
  • 打赏
  • 举报
回复
引用 1 楼 duanzi_peng 的回复:
你 也没有问问 面试官 怎么做?
木有
u010634579 2015-04-02
  • 打赏
  • 举报
回复
引用 3 楼 wyd1520 的回复:
无非让你用什么 二分什么的查找法,不过我一般会直接回答,我直接用LINQ查找,至于说慢我试过了100W记录,最多也只用个几毫秒。
我说用linq了,他说用别的方法,估计是要我回答二分法,可惜我昨天还不知道这个知识点啊
u010634579 2015-04-02
  • 打赏
  • 举报
回复
引用 2 楼 bdmh 的回复:
这根数组中存放的什么类型的数据有关系,你应该追问一句,至少面试官认为你在这方面还是有认识的 比如存放的是有序的数字,就可以用二分法,如果是杂乱无章的,遍历没错
是存放的数字,但是如果是没有规律的数字,那这个二分法是不是就没有作用了
本拉灯 2015-04-02
  • 打赏
  • 举报
回复
无非让你用什么 二分什么的查找法,不过我一般会直接回答,我直接用LINQ查找,至于说慢我试过了100W记录,最多也只用个几毫秒。
bdmh 2015-04-02
  • 打赏
  • 举报
回复
这根数组中存放的什么类型的数据有关系,你应该追问一句,至少面试官认为你在这方面还是有认识的 比如存放的是有序的数字,就可以用二分法,如果是杂乱无章的,遍历没错
exception92 2015-04-02
  • 打赏
  • 举报
回复
你 也没有问问 面试官 怎么做?

110,530

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • Web++
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧