1.题目描述 给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5输出: 2 示例 2: 输入: [1,3,5,6], 2输出: 1 示例 3: 输入: [ ...
分类:
其他好文 时间:
2020-05-09 01:12:16
阅读次数:
58
题目: 解答: 1 class Solution { 2 public: 3 int search(vector<int>& nums, int target) 4 { 5 int l = 0; 6 int r = nums.size() -1; 7 8 while (l <= r) 9 { 10 ...
分类:
编程语言 时间:
2020-05-05 12:36:15
阅读次数:
57
题目: 解答: 设置双指针 如果右指针 r 是奇数,指针往右走 否则与左指针 l 交换一次 移动左指针 l 1 class Solution { 2 public: 3 vector<int> sortArrayByParity(vector<int>& A) 4 { 5 int l = 0; 6 ...
分类:
编程语言 时间:
2020-05-04 19:48:57
阅读次数:
69
题目: 解答: 方法一:双指针。 在找到一个偶数位是奇数的前提下,找奇数位上的偶数,找到之后在交换。 1 class Solution { 2 public: 3 vector<int> sortArrayByParityII(vector<int>& A) 4 { 5 int j = 1; 6 f ...
分类:
编程语言 时间:
2020-05-04 19:32:24
阅读次数:
70
用两个指针就行,一个指针i初始时指向头元素,另一个j指向下标为1的元素(所以说,当长度为1时单独判断,长度为1就返回1) 之后,如果i下标的元素等于j下标的元素,j++,假如到了i和j代表的元素不等时,说明i,j中间这些都是重复元素,都是等于nums[i]的元素,此时,nums[i+1]=nums[ ...
分类:
编程语言 时间:
2020-05-04 14:59:43
阅读次数:
59
题目描述: 给定一个数组 nums,编写一个函数将所有 0 移动到数组的末尾,同时保持非零元素的相对顺序。 示例: 输入: [0,1,0,3,12]输出: [1,3,12,0,0]说明: 必须在原数组上操作,不能拷贝额外的数组。尽量减少操作次数。 思想:借助快速排序思想 参考快速排序的思想,快速排序 ...
分类:
移动开发 时间:
2020-05-03 00:50:31
阅读次数:
74
1.题目描述 给定一个排序数组,你需要在 原地 删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在 原地 修改输入数组 并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并 ...
分类:
编程语言 时间:
2020-05-03 00:42:07
阅读次数:
75
题目描述 假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组?[0,1,2,4,5,6,7] 可能变为?[4,5,6,7,0,1,2]?)。 请找出其中最小的元素。 注意数组中可能存在重复的元素。 示例: 题目链接: https://leetcode cn.com/problem ...
分类:
编程语言 时间:
2020-04-29 23:19:55
阅读次数:
73
PHP array_multisort() 函数定义和用法array_multisort() 函数返回排序数组。您可以输入一个或多个数组。函数先对第一个数组进行排序,接着是其他数组,如果两个或多个值相同,它将对下一个数组进行排序。注释:字符串键名将被保留,但是数字键名将被重新索引,从 0 开始,并以 ...
分类:
编程语言 时间:
2020-04-28 15:03:09
阅读次数:
56
题目来源 本题要求将给定的 N 个正整数按非递增的顺序,填入“螺旋矩阵”。所谓“螺旋矩阵”,是指从左上角第 1 个格子开始,按顺时针螺旋方向填充。要求矩阵的规模为 m 行 n 列,满足条件:m×n 等于 N;m≥n;且 m?n 取所有可能值中的最小值。 输入格式: 输入在第 1 行中给出一个正整数 ...
分类:
其他好文 时间:
2020-04-28 14:48:12
阅读次数:
54