LeetCode81 搜索旋转排序数组II 题目描述 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,0,1,2,2,5,6] 可能变为 [2,5,6,0,0,1,2] )。 编写一个函数来判断给定的目标值是否存在于数组中。若存在返回 true,否则返回 false。 ...
分类:
编程语言 时间:
2020-11-24 12:11:34
阅读次数:
7
给定一个非负整数数组 A, A 中一半整数是奇数,一半整数是偶数。 对数组进行排序,以便当 A[i] 为奇数时,i 也是奇数;当 A[i] 为偶数时, i 也是偶数。 你可以返回任何满足上述条件的数组作为答案。 示例: 输入:[4,2,5,7] 输出:[4,5,2,7] 解释:[4,7,2,5],[ ...
分类:
编程语言 时间:
2020-11-17 12:59:31
阅读次数:
26
思路 方法一:二分法之一 (类似暴力) (1) 用二分法找到第一个target所在的位置 (2) 之后在此位置前后顺序查找依次计数target的出现次数 复杂度分析 时间复杂度:最坏情况下O(n) 空间复杂度:O(1) ...
分类:
编程语言 时间:
2020-11-16 13:13:01
阅读次数:
7
Leetcode(easy Double pointer) Leetcode 双指针简单题目 26 删除排序数组中的重复项 class Solution{ public int removeDuplicates(int[] nums){ // step代表慢指针 int step = 0; // 这 ...
分类:
其他好文 时间:
2020-11-06 02:28:21
阅读次数:
24
1. 题目描述 2. 代码 1 class Solution: 2 def removeDuplicates(self, nums: 'List[int]') -> int: 3 prevalue = 0 4 n = len(nums) 5 count = 0 6 i,j = 0,0 7 while ...
分类:
编程语言 时间:
2020-11-02 09:55:41
阅读次数:
32
一、实验描述 Radix Sort。实现桶式排序和基于桶式排序的基数排序。在基数 B 中,数组长度 n 和 最大元素 m 中,对排序时间影响最大的是哪一个?元素在未排序数组中的顺序是否对时间复杂度有影响?设计实验证明你的想法。 Stack。用 C 语言设计堆栈,并实现中缀表达式到后缀表达式的转换。 ...
分类:
其他好文 时间:
2020-10-27 11:43:38
阅读次数:
19
问题描述 给定一个按照升序排列的整数数组 nums,和一个目标值 target。找出给定目标值在数组中的开始位置和结束位置。 你的算法时间复杂度必须是 O(log n) 级别。 如果数组中不存在目标值,返回 [-1, -1]。 示例 1: 输入: nums = [5,7,7,8,8,10], tar ...
分类:
编程语言 时间:
2020-09-17 21:50:55
阅读次数:
30
int* sortArrayByParityII(int* A, int ASize, int* returnSize){ int* arr = (int*)calloc(ASize,sizeof(int)); int evenindex = 0; int oddindex = 1; for (in ...
分类:
编程语言 时间:
2020-09-17 15:33:05
阅读次数:
32
解题思路: 排序数组中的搜索问题,首先可以想到二分法解决。 根据题意,数组可以按照下面的规则进行划分为两部分。 左子数组:nums[i]=i; 右子数组:nums[i]!=i; 缺失的数字等于“右子数组的首位元素”对应的索引;因此考虑使用二分法查找“由子数组的首位元素”。 1 int missing ...
分类:
其他好文 时间:
2020-09-17 13:50:32
阅读次数:
32
1122. 数组的相对排序 给你两个数组,arr1 和 arr2, arr2 中的元素各不相同arr2 中的每个元素都出现在 arr1 中对 arr1 中的元素进行排序,使 arr1 中项的相对顺序和 arr2 中的相对顺序相同。未在 arr2 中出现过的元素需要按照升序放在 arr1 的末尾。 示 ...
分类:
编程语言 时间:
2020-08-09 09:19:24
阅读次数:
85