排序做法和二分做法

旋转数组的最小数字

http://www.nowcoder.com/questionTerminal/c6c7742f5ba7442aada113136ddea0c3

/**
 * 第一种做法,通过题意可以了解到,只需要输出旋转后数组最小元素就行了,所以直接给数组进行排序
 * 数组的一个元素就是最小元素,最后输出即可,Arrays.sort()的排序时间复杂度是根据数组长度来判断
 * 基本类型是quick sort排序,对象类型是优化过后 merge sort,时间复杂度是O(nlgn) 空间复杂度O(1)
 */
public int minNumberInRotateArray(int [] array) {
    if (array.length == 0 || array == null) return 0;
    Arrays.sort(array);
    return array[0];
}
全部评论
暴力都只要O(n)... nlogn实属拉跨
点赞 回复 分享
发布于 2020-05-15 09:10
我开始也是这样子做的 只关注结果要输出什么
点赞 回复 分享
发布于 2020-04-08 11:42
可是保存调试失败
点赞 回复 分享
发布于 2020-04-08 11:42
看了那么多二分查找的,这个只需要返回最小的值,那这种应该是最简单的了
点赞 回复 分享
发布于 2020-03-16 16:49
点赞 回复 分享
发布于 2020-02-12 16:51
我也觉得这样挺简便啊 没搞懂题目主要干嘛
点赞 回复 分享
发布于 2019-12-28 11:36

相关推荐

09-01 11:31
门头沟学院 Java
buul:七牛云的吧,感觉想法是好的,但是大家没那么多时间弄他这个啊。。。不知道的还以为他是顶尖大厂呢还搞比赛抢hc,只能说应试者的痛苦考察方是无法理解的,他们只会想一出是一出
点赞 评论 收藏
分享
评论
点赞
收藏
分享

创作者周榜

更多
牛客网
牛客网在线编程
牛客网题解
牛客企业服务