上一页 1 2 3 4 5 6 7 8 ··· 19 下一页
摘要: quicksort和第k小元素问题 1. 超好用的模板 int partition(int a[],int l,int r){ // 这里i 是l-1 ,不会越界,因为下面是++i, i会先加。j也会先减,因为是以右边的元素作为划分点。 int i = l-1, j=r; int v = a[r]; 阅读全文
posted @ 2021-02-19 20:01 过去的我 阅读(62) 评论(0) 推荐(0) 编辑
摘要: 1. 思路 首先,将数组划分成2个子数组,可以取左点,右点,中间点,随机点。然后用2个指针去扫,将扫到的特定数据交换,然后再递归左边的子数组,右边的子数组。 不需要用到额外的存储空间,速度又快,所以是很优秀的排序,平均时间能达到nlogn,最差情况下能达到n平方。算法导论里面是已右端点来做划分的,但 阅读全文
posted @ 2021-02-17 22:00 过去的我 阅读(77) 评论(1) 推荐(0) 编辑
摘要: 1. 思路 其实就是模拟,加法是最简单的,从个位开始加,价位加到前一位,然后再取10的余数。 for (int i = 1; i <=len ; ++i) { // 计算和 c[i] += a[i]+b[i]; // 进位 c[i+1] = c[i]/10; // 取10的余数 c[i]%=10; 阅读全文
posted @ 2021-02-14 11:41 过去的我 阅读(71) 评论(0) 推荐(0) 编辑
摘要: 1. 概述 有好几种解法,比较常规的有2中,1是单调队列,队首存放最值。2是优先队列,top也是存放的最值。 2. 优先队列 class Solution { public: vector<int> maxSlidingWindow(vector<int>& nums, int k) { int n 阅读全文
posted @ 2021-02-09 11:00 过去的我 阅读(80) 评论(0) 推荐(0) 编辑
摘要: 1. 应用场景 字符串检索,查询 词频统计 字符串排序,插入的时候就是有顺序的,所以先序遍历,就得到字典树的排序。 前缀匹配 抄自<算法竞赛 入门进阶>,挺好的一本书。 2. c++实现 struct Trie{ Trie* next[26]; int num; Trie(){ for (int i 阅读全文
posted @ 2021-02-08 16:35 过去的我 阅读(65) 评论(0) 推荐(0) 编辑
摘要: 1. 标准构造函数 class IntCell{ public: IntCell(){ storedValue = 0; } IntCell(int initialValue){ storedValue = initialValue; } int read(){ return storedValue 阅读全文
posted @ 2021-02-06 17:34 过去的我 阅读(154) 评论(0) 推荐(0) 编辑
摘要: 快速幂 1. 主要思路 就是将运算次数减少,比如4次方的话不用乘4次,乘2次就可以了, 乘方,然后再乘方。 int fastPow(int a,int n){ if(n==1) return a; int temp = fastPow(a,n/2); // n是奇数 if (n%2 == 1) re 阅读全文
posted @ 2021-02-05 01:05 过去的我 阅读(38) 评论(0) 推荐(0) 编辑
摘要: ingress 多域名 1. 没有指定host apiVersion: networking.k8s.io/v1 kind: Ingress metadata: name: test-ingress spec: defaultBackend: service: name: test port: nu 阅读全文
posted @ 2021-02-01 16:44 过去的我 阅读(1240) 评论(0) 推荐(0) 编辑
摘要: 正常来做的话稍微有点复杂,《算法竞赛入门到进阶》上面是让我们用java来做,因为java有BigInteger类库。 我试了一下非常爽。 import java.math.BigInteger; import java.util.Scanner; public class Main{ public 阅读全文
posted @ 2021-01-16 23:25 过去的我 阅读(81) 评论(0) 推荐(0) 编辑
摘要: 1. 单数组或者vector排序 跟java的差不多,java的详见java数组排序,但是c++是stl ,算法跟容器分离,所以参数是迭代器,数组的话是头尾指针。 sort(a,a+n); 默认从小到大,如果要从大到小,定义一个比较函数返回bool即可: bool my_greater(int i, 阅读全文
posted @ 2021-01-16 14:35 过去的我 阅读(276) 评论(0) 推荐(0) 编辑
上一页 1 2 3 4 5 6 7 8 ··· 19 下一页