摘要: 问题描述 一个长度为n-1的递增排序数组中的所有数字都是唯一的,并且每个数字都在范围0~n-1之内。在范围0~n-1内的n个数字中有且只有一个数字不在该数组中,请找出这个数字。 示例 1: 输入: [0,1,3]输出: 2 分析 有序数组,优先考虑二分 分为左右两部分,左侧,nums[i]==i,右 阅读全文
posted @ 2020-05-14 20:17 Flora1014444 阅读(126) 评论(0) 推荐(0) 编辑
摘要: 题目描述 统计一个数字在排序数组中出现的次数。 示例 1: 输入: nums = [5,7,7,8,8,10], target = 8 输出: 2 分析 1.暴力 2.有序数组优先考虑二分查找 找到target在数组中的起始位置 解题 class Solution: def search(self, 阅读全文
posted @ 2020-05-14 19:18 Flora1014444 阅读(99) 评论(0) 推荐(0) 编辑
摘要: 题目描述 在一个长度为 n 的数组 nums 里的所有数字都在 0~n-1 的范围内。数组中某些数字是重复的,但不知道有几个数字重复了,也不知道每个数字重复了几次。请找出数组中任意一个重复的数字。 分析 猛的一看还挺简单,注意时间效率和空间效率 1.直接排序,加一个for循环,找出和后一个相等的数字 阅读全文
posted @ 2020-05-14 15:03 Flora1014444 阅读(113) 评论(0) 推荐(0) 编辑
摘要: 题目描述 把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 分析 1. 阅读全文
posted @ 2020-05-14 14:34 Flora1014444 阅读(103) 评论(0) 推荐(0) 编辑