摘要: 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在目标值,返回 [-1, -1]。 示例 1: 示例 2: 阅读全文
posted @ 2018-12-13 23:06 Yaaaaa 阅读(192) 评论(0) 推荐(0)
摘要: 峰值元素是指其值大于左右相邻值的元素。 给定一个输入数组 nums,其中 nums[i] ≠ nums[i+1],找到峰值元素并返回其索引。 数组可能包含多个峰值,在这种情况下,返回任何一个峰值所在位置即可。 你可以假设 nums[-1] = nums[n] = -∞。 示例 1: 输入: nums 阅读全文
posted @ 2018-12-12 23:51 Yaaaaa 阅读(187) 评论(0) 推荐(0)
摘要: 在未排序的数组中找到第 k 个最大的元素。请注意,你需要找的是数组排序后的第 k 个最大的元素,而不是第 k 个不同的元素。 示例 1: 示例 2: 说明: 你可以假设 k 总是有效的,且 1 ≤ k ≤ 数组的长度。 这题应该是考察快速排序 阅读全文
posted @ 2018-12-12 00:54 Yaaaaa 阅读(149) 评论(0) 推荐(0)
摘要: 给定一个非空的整数数组,返回其中出现频率前 k 高的元素。 示例 1: 示例 2: 说明: 你可以假设给定的 k 总是合理的,且 1 ≤ k ≤ 数组中不相同的元素的个数。 你的算法的时间复杂度必须优于 O(n log n) , n 是数组的大小。 思路: 首先利用hashMap,通过遍历一边,存储 阅读全文
posted @ 2018-12-10 14:50 Yaaaaa 阅读(270) 评论(0) 推荐(0)
摘要: 题目描述: 在 O(n log n) 时间复杂度和常数级空间复杂度下,对链表进行排序。 示例 1: 示例 2: 阅读全文
posted @ 2018-12-09 11:19 Yaaaaa 阅读(852) 评论(0) 推荐(0)
摘要: 异或 找不同 —。— 阅读全文
posted @ 2017-04-13 23:42 Yaaaaa 阅读(166) 评论(0) 推荐(0)
摘要: 要求:给定一个整数数组,除了其中1个元素之外,其他元素都会出现两次。找出这个只出现1次的元素。 例: array =[3,3,2,2,1] 找出元素1. 思路:最开始的想法是用两次for循环,拿数组自身和自身进行匹配查找,如果能匹配到相同的元素,则进行匹配下一个元素。 后来发现运用 ^异或 操作非常 阅读全文
posted @ 2017-04-13 15:12 Yaaaaa 阅读(143) 评论(0) 推荐(0)
摘要: 。 10101110 & 10010010 得到10000010 10101110 | 10010010 得到10111110 10101110 ^ 10010010 得到00111100 ~10101110 得到01010001 10101110<<2 得到10111000 10101110>>2 阅读全文
posted @ 2017-04-13 14:58 Yaaaaa 阅读(702) 评论(0) 推荐(0)
摘要: 要求:给出两个数组(没有重复的)nums1和nums2,其中nums1的元素是nums2的子集。 查找nums2的相应位置中nums1元素的所有下一个更大的数字。 nums1中的下一个大数字x的数字是num2中右边的第一个较大的数字。 如果不存在,则输出-1表示该数字。 Example 1: 阅读全文
posted @ 2017-04-12 23:14 Yaaaaa 阅读(301) 评论(0) 推荐(0)
摘要: 要求:将给定字符串内容倒置。 例:输入"Hello" 输出"olleH" 阅读全文
posted @ 2017-04-11 00:33 Yaaaaa 阅读(271) 评论(0) 推荐(0)