摘要:
参考文献:https://www.jianshu.com/p/e59d51e1eef5 单调队列,顾名思义,是一种具有单调性的队列。众所周知,单调性有单调递增和单调递减两种,相应的单调队列也分为单调递增队列和单调递减队列两种。 单调递增队列:保证队列头元素一定是当前队列的最小值,用于维护区间的最小值 阅读全文
posted @ 2020-02-26 22:06
swiftAlien
阅读(250)
评论(0)
推荐(0)
摘要:
62. 丑数 我们把只包含质因子2、3和5的数称作丑数(Ugly Number)。 例如6、8都是丑数,但14不是,因为它包含质因子7。 求第n个丑数的值。 思路:定义三个指针,分别指向所在的最小值,每次取最小值; class Solution { public: int getUglyNumber 阅读全文
posted @ 2020-02-26 21:53
swiftAlien
阅读(234)
评论(0)
推荐(0)
摘要:
57. 数字序列中某一位的数字 数字以0123456789101112131415…的格式序列化到一个字符序列中。 在这个序列中,第5位(从0开始计数)是5,第13位是1,第19位是4,等等。 请写一个函数求任意位对应的数字。 思路:数字按位数分类分别有9,90,900,9000……个数 class 阅读全文
posted @ 2020-02-26 21:13
swiftAlien
阅读(247)
评论(0)
推荐(0)
摘要:
58. 把数组排成最小的数 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。 例如输入数组[3, 32, 321],则打印出这3个数字能排成的最小数字321323。 class Solution { public: string printMinNumbe 阅读全文
posted @ 2020-02-26 21:10
swiftAlien
阅读(253)
评论(0)
推荐(0)
摘要:
1、最长不含重复字符的子字符串 请从字符串中找出一个最长的不包含重复字符的子字符串,计算该最长子字符串的长度。 假设字符串中只包含从’a’到’z’的字符。 思路:前后指针分别指向不重复的最前和最后,后指针每次后移时,更新前指针: map保存的是字符对应的位置; class Solution { pu 阅读全文
posted @ 2020-02-26 21:08
swiftAlien
阅读(408)
评论(0)
推荐(0)
摘要:
1、两个链表的第一个公共结点 输入两个链表,找出它们的第一个公共结点。 当不存在公共节点时,返回空节点。 思路:让两个指针分别走一遍两个链表,交点就是公共节点: /** * Definition for singly-linked list. * struct ListNode { * int va 阅读全文
posted @ 2020-02-26 17:50
swiftAlien
阅读(217)
评论(0)
推荐(0)
摘要:
归并排序模板: void merge(vector<int>& nums, int l, int r){ if ( l >= r) return 0;//只有一个数 int mid = l+r >>1; //递归左右排序 merge(nums,l,mid); merge(nums,mid+1,r); 阅读全文
posted @ 2020-02-26 12:12
swiftAlien
阅读(157)
评论(0)
推荐(0)

浙公网安备 33010602011771号