博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
100-48微软(运算)
阅读量:6524 次
发布时间:2019-06-24

本文共 348 字,大约阅读时间需要 1 分钟。

hot3.png

48.微软(运算):
一个数组是由一个递减数列左移若干位形成的,比如{4,3,2,1,6,5}

是由{6,5,4,3,2,1}左移两位形成的,在这种数组中查找某一个数。

思路:

将数组右移变换为原来的样子O(n),然后再有序数组中查找一个数字O(1),总的时间复杂度为O(1)。我了个去,这样貌似还不如直接遍历查找来的方便。。。囧。。。

那么用2分查找?不行,还得先排序。

那就用快速排序的变形来查找。。。

更新:

最近回过头来重新看这100题,看到这题的时候。发现当时想的比较简单。后来又弄了一种方法,见:

http://my.oschina.net/dapengking/blog/115391

转载于:https://my.oschina.net/dapengking/blog/93046

你可能感兴趣的文章
Pyqt 打开外部链接的几种方法
查看>>
JavaScript DOM编程艺术学习笔记(一)
查看>>
event.srcElement获得引发事件的控件(表单)
查看>>
ASP.NET MVC铵钮Click后下载文件
查看>>
SQL Server 中 EXEC 与 SP_EXECUTESQL 的区别
查看>>
【Bootstrap】 bootstrap-table表格组件
查看>>
基本数据结构 - 栈和队列
查看>>
Linux软中断、tasklet和工作队列
查看>>
如何解决ORA-28002 the password will expire within 7 days问题(密码快过期)
查看>>
Asp.Net Core 轻松学-利用日志监视进行服务遥测
查看>>
Windows Mobile 系列文章索引---不断整理中(2009-07-08)
查看>>
架构语言ArchiMate - 架构视角(Viewpoint)分类框架
查看>>
LightSwitch社区资源搜集
查看>>
Android通讯录查询篇--ContactsContract.Data 二(续)
查看>>
IT人的自我导向型学习:开篇杂谈
查看>>
[原创]BizTalk动手实验系列目录
查看>>
HDU 4611Balls Rearrangement(思维)
查看>>
[LeetCode] Majority Element II
查看>>
minGW, cygwin, GnuWin32【C++的跨平台交叉编译问题】
查看>>
我的Dll(动态链接库)学习笔记(转)
查看>>