可以用hash表,本题使用二分法 二分查找算法模板 视频讲解:AcWing 67. 数字在排序数组中出现的次数 ...
分类:
编程语言 时间:
2020-02-20 00:07:18
阅读次数:
74
38 数字在排序数组中出现的次数 39 二叉树的深度 40 数组中只出现一次的数字 41 和为s的两个数字 VS 和为s的连续正数序列 42 反转单词顺序 VS 左旋转字符串 43 n个骰子的点数 44 扑克牌的顺子 45 圆圈中最后剩下的数字 46 求1+2+...+n 47 不用加减乘除做加法 ...
分类:
其他好文 时间:
2020-02-19 22:28:03
阅读次数:
88
参考和引用了 "白话经典算法系列之六——快速排序" 的一些内容 1. 简单介绍 快速排序(Quicksort) 是一种 分治 的排序算法,它将一个数组分成两个子数组,将两部分独立地排序;排序的方式是当两个子数组都有序时整个数组也就自然有序了 通过一趟排序将要排序的数据分割成独立的两部分,其中一部分的 ...
分类:
编程语言 时间:
2020-02-18 20:31:52
阅读次数:
81
Q:统计一个数字在排序数组中出现的次数。 A: 1.用STL库函数解决 (1)count函数:algorithm头文件定义,其功能类似于find。这个函数使用一对迭代器和一个值做参数,返回这个值出现次数的统计结果。 或 (2)equal_range函数:函数equal_range()返回first和 ...
分类:
编程语言 时间:
2020-02-18 16:38:24
阅读次数:
79
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前 ...
分类:
其他好文 时间:
2020-02-18 14:42:05
阅读次数:
70
给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 nums 的前 ...
分类:
编程语言 时间:
2020-02-15 15:16:31
阅读次数:
74
给定一个排序数组和一个目标值,在数组中找到目标值,并返回其索引。如果目标值不存在于数组中,返回它将会被按顺序插入的位置。 你可以假设数组中无重复元素。 示例 1: 输入: [1,3,5,6], 5输出: 2示例 2: 输入: [1,3,5,6], 2输出: 1示例 3: 输入: [1,3,5,6], ...
分类:
其他好文 时间:
2020-02-15 15:11:11
阅读次数:
70
问题描述: 给定一个排序数组,你需要在原地删除重复出现的元素,使得每个元素只出现一次,返回移除后数组的新长度。 不要使用额外的数组空间,你必须在原地修改输入数组并在使用 O(1) 额外空间的条件下完成。 示例 1: 给定数组 nums = [1,1,2], 函数应该返回新的长度 2, 并且原数组 n ...
分类:
编程语言 时间:
2020-02-12 20:24:36
阅读次数:
76
假设按照升序排序的数组在预先未知的某个点上进行了旋转。 ( 例如,数组 [0,1,2,4,5,6,7] 可能变为 [4,5,6,7,0,1,2] )。 搜索一个给定的目标值,如果数组中存在这个目标值,则返回它的索引,否则返回 -1 。 你可以假设数组中不存在重复的元素。 你的算法时间复杂度必须是 O ...
分类:
编程语言 时间:
2020-02-12 10:28:39
阅读次数:
68
题目描述 给定任一个各位数字不完全相同的4位正整数,如果我们先把4个数字按非递增排序,再按非递减排序,然后用第1个数字减第2个数字,将得到 一个新的数字。一直重复这样做,我们很快会停在有“数字黑洞”之称的6174,这个神奇的数字也叫Kaprekar常数。 例如,我们从6767开始,将得到 7766 ...
分类:
编程语言 时间:
2020-02-11 00:37:24
阅读次数:
69