总结复习

不知不觉已经两年 OI 了
主要是回顾一下以前做过的一些题目,
由于开始写这个玩意的时间比较靠后,所以漏了很多好题
慢慢加

基础算法

搜索

数论/数学

图论

字符串

  • Trie 树 http://www.fzoi.top/problem/4903 答题卡 手动模拟样例,转化问题成短串第一个字母外和长串后缀相同,第一个字母在长串之前出现过,trie 树上 dp
  • KMP 变形 P5256 JSOI2013编程作业 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 改变两个字符相等的条件:到上一个相同字符的距离相等,同时注意到上一个字符可能不在匹配范围内的判断
  • exKMP+Manacher http://codeforces.com/gym/101981 MEDIOCRE STRING PROBLEM 转化问题,S1+S2+T ,假设已知 𝑆 中每个位置拓展的最长回文半径 𝑝𝑖 那么对于半径 pi 的回文,对应的方案要求 𝑆1𝑇 对称,且 𝑆1 的右端点固定,把 𝑆 反过来做 exKMP 即可。注意到最后统计答案的时候,需要差分计算 右端点在 i 的回文串个数,否则答案会漏很多
  • KMP 循环节 Problem - 3746 (hdu.edu.cn) kmp 一遍后,最小循环节就是 nkmp[n]
  • AC自动机+FAIL树上计算 NOI2011 阿狸的打字机 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 首先建出 AC 自动机和 fail 树,容易发现,对于一个询问 (x,y) ,我们不妨让 fail 树的根到 fail 树上的 y 这一条路径上的点全部+1,那么 x 的重复次数便是 x 在 fail 树上子树中1的数量。这是因为如果 x 在 fail 树的子树上如果存在 1,假设这个节点是 z,那么由 fail 的性质,字符串 x 可以通过在尾部增加字符的方式变成 z,而 z 为 1,也就是说 z 是 y 的子串。需要注意的是,因为我们在得到 fail 数组的时候对原 trie 树进行了修改,所以我们最后在 trie 上 dfs 的时候需要在原 trie 的 copy 上进行,不然就会死循环(卡了我好久
  • 后缀数组+单调栈 [P4248 AHOI2013]差异 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 建立后缀数组后,考虑每一个 height[i] 对答案的贡献。知道对于排名分别为 i,j 的两个字符串,最长公共前缀为 minl<kr{height[k]}
  • AC自动机+栈 「USACO2015FEB」Censoring (Gold) - 题目 - FZUOJ (fzoi.top) 注意到我们求解 fail 的时候有一个对 trie 树进行修改的操作,这个操作实际上与 kmpnext 数组类似。考虑开一个答案栈,把 S 放进 AC 自动机里面跑,匹配就退栈即可
  • AC自动机+DFS找环 POI2000」病毒 父节点到子节点看作一条单向边,失配指针nxt[]指向的也看作一条单向边,最后会形成一个图。 如果在这个图中找到一个环,且不存在结束标记,那么存在一个以环为循环的无限长的安全代码。 注意:如果一个点的 fail 指向的位置有结束标记,这个点即使没有结束标记也需要加上结束标记
  • AC自动机+DP 「JSOI2007」文本生成器 注意到 fail 树的传递性质。用所有的情况减去不可读的情况(跑不到单词结尾节点的情况)。不可读的情况数量可以用 d p 求。设 f[i][j] 表示匹配了 i 个字符,现在到 j 号节点的不可读情况数量,从父亲往儿子转移。
  • Manacher 「POI2010」Antisymmetry - 题目 - FZUOJ (fzoi.top) 修改字符相同的定义即可,每一个 i 的贡献为 p[i]/2
  • KMP [POI2006]OKR-Periods of Words 画图观察,容易发现 KMP 性质。
  • KMP+DP 「CF432D」 Prefixes and Suffixes - 题目 - FZUOJ (fzoi.top) 题目要求的相同前后缀有明显的 KMP 味道,考虑计数,设以 i 为结尾的“完美子串” 出现 f[i] 次,有刷新: f[kmp[i]]+=f[i] ,注意应该倒序刷新
  • EXKMP [CF126B]Password 通过 exkmp,求得 z 数组通过 z[i]+i==len判断出这个串既是前缀又是后缀 ,maxn记录当前最大的 z,如果说我们已经找到了一个后缀前缀,并且在 i 前面的最大的 z[x] 是要比 n-i 长的,说明在中间至少也出现了一个相同的。求出最大的 i 满足 z[i]+i=n 并且 j<i,s.t.z[j]>=ni ,答案即为 s[1..z[i]]

数据结构

  • 线段树区间最小 P1083 [NOIP2012 提高组] 借教室 显然,维护区间最小值即可,注意常数
  • 主席树 20210925数据结构 (pb day2) - 题目 - FZUOJ (fzoi.top) 发现可以对于每个 w ,用一棵线段树维护每个位置的值是否 w 。 那么一次修改就是把 x 的线段树的 [l,r] 贴到 x+1 的线段树上。 用可持久化线段树维护即可。
  • 树状数组二维偏序 ABC221E 一对满足 ai<aj 的点对的贡献是 2ji1=2j2i+1 , 转二维偏序问题,贡献变成了 bit.add((2的逆元)^i+1) ,bit.ask(i)×2i
  • 树状数组逆序对 楼兰图腾 - 题目 - FZUOJ (fzoi.top) 经典模板
  • 树链剖分 「BZOJ2157」旅游 模板
  • 线段树区间hash判断字符串大小 KJF的字符串 - 题目 - FZUOJ (fzoi.top) 字符串之间可以形成一种树形结构,而有连边的两个字符串仅有一个字符不同,考虑动态开点线段树维护 hash 值。此时,通过线段树,我们可以比较两个字符串,如果左区间 hash 相等,比右区间,否则左区间,直到叶子节点分出大小。
  • 线段树区间最小+单调栈 easy - 题目 - FZUOJ (fzoi.top) 原条件等价于 maxmin+1cnt0cnt 为区间不同数的个数。注意到 maxmin+1 增长速度大于 cnt ,故可改写成 maxmincnt+1=0 ,而单个点一定满足条件且为 0,所以考虑固定 r,考虑用线段树维护 maxmincnt ,那么答案就是最小值的个数(即0的个数)
  • 线段树维护单调栈(单侧递归) P4198 楼房重建 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 经典例题
  • 线段树区间最大+尺取法 [P1712 NOI2016] 区间 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 离散化,将线段按长度排序,满足尺取法条件。假设现在双指针 l,r ,即选择 l,r 区间的线段,在线段树上修改即可,看 t[1].mx 是否大于 m(覆盖次数),若小于,r++ ,大于 l
  • 线段树二分 CF689D Friends and Subsequences - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 考虑线段树维护区间最值,考虑固定左端点 l,因为 min/max 的单调性, r 可以取的范围是一个区间。通过线段树求出最小的 k1 ,使得 maxi=1k1ai>mini=1k1bi ,求出最小的 k2 ,使得 maxi=1k2aimini=1k2bi ,那么,区间 [k2,k1) 都满足条件。考虑如何求解 k1 ,当我们线段树询问到一个整体的块的时候(L<=l&&r<=R),判断当前a最大值和b最小值的关系,如果此区间有答案,那么下去看一眼左区间即可(看一眼->递归一次)。k2 同理。
  • 线段树分治 P5227 AHOI2013连通图 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 发现每个点的出现时间是一段段区间,离线处理出每条边被删除的位置,解决这个可以用 m 个 vector 解决。对于每一条边,将其挂在 " 该边出现的时间区间对应的线段树节点 " 的 vector 上。最后配合可撤销并查集扫一遍即可。
  • 线段树分治 P5787 二分图 /【模板】线段树分治 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 模板,扩展域并查集维护二分图
  • 线段树优化建图 CF786B Legacy - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 建立线段树 TreeIn ,TreeOut
  • 单调栈/悬线法 [HDU 6957]Maximal submatrix - 题目 - FZUOJ (fzoi.top) 单调栈裸题。注意到子矩阵连续
  • 线段树括号匹配 ABC223F 模板
  • 线段树二分+区间合并 20211020 交换 - 题目 - FZUOJ (fzoi.top)
  • 边分治 [BZOJ2870]最长道路 Tree
  • 左偏树 P3377 【模板】左偏树(可并堆) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 堆的合并,hsfzLZH1 的博客 - 洛谷博客 (luogu.com.cn)
  • ST+二分 与众不同 loj10121 与众不同(ST算法)(二分)_A_Bright_CH的博客-CSDN博客
  • 二维ST表 「HAOI2007」理想的正方形 - 题目 - FZUOJ (fzoi.top)
  • 线段树区间min区修+贪心 Optimal Insertion 有贪心思路:优先让 bi 小的更优,有性质 b 升序。发现一个新点在位置 i 的贡献既是其左边大于它的数的数量+右边小于它的数的数量,考虑线段树维护。对于所有的 j 满足 biajbi+1 ,线段树上 [1,aj)+1(aj,n)1 。(看代码)
  • 线段树找第一个为0位置 [GDKOI2021TG DAY2]群岛 - 题目 - FZUOJ (fzoi.top) 线段树维护区间最小值。区间 [ai,i] 整体+1,对于一个询问,找到第一个为 0 的位置即可
  • ST表+堆 「NOI2010」超级钢琴 - 题目 - FZUOJ (fzoi.top) 使用 ST 表 O(nlogn) 预处理出一个区间的最优位置,把三元组 (o,l,r) 放入堆中,以区间 [o,lr] 前缀最优值为比较。每次在堆中取出一个三元组 (o,l,r) 时,可以把 (o,l+1,r)(o,l,r1) 加入堆中。
  • 分块 「BZOJ2821」作诗 - 题目 - FZUOJ (fzoi.top) nn 预处理 sum[i][j] 表示前 i 块中 j 的出现次数,f[i][j] 表示块 i 到块 j 的答案。每次询问 n 回答。
  • 分块 数列分块入门 6 - 题目 - FZUOJ (fzoi.top) 直接 n 暴力插入,在块过大时,暴力重建(替罪羊树思想)
  • 分块 数列分块入门 9 - 题目 - FZUOJ (fzoi.top) nn 预处理 f[i][j] 表示第 i 块到 j 块的答案。vector[i] 存储数值 i 的出现位置,查询区间 [l,r]c 出现次数既是 upper_bound(vector[c].begin,end(),r)lower_bound(,,l)
  • 分块 磁力块 - Problem - FZUOJ (fzoi.top) 先按距离排序,分块,块内按 m 排序。写一个类似 bfs 的东西,如果一个块的最大的 d ,即 d[r[i]] 都可以在范围内,那么只需要考虑 m 限制,从块头扫即可,注意块头应该修改,不然会被卡回 O(n^2)
  • 线段树扫描线 20211030 军队 - Problem - FZUOJ (fzoi.top) 线段树维护区间数字具体出现次数,解决问题第一部分。求得每一行雌/雄个数,设 a[i] 为雌/雄个数的min。发现对于单个行选 y 个,答案最优为 y2×(yy2) ,预处理 cnt[i] 表示 a 大于等于 i 的数的个数,判断一下。若 a[i]<y2 ,列出选 x 行总和式子: (yai)ai=yaiai2 前缀和 a,a2 ,即可 O(1) 回答问题。
  • 普通莫队 [P1972 SDOI2009]HH的项链 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 模板
  • 可持久化线段树+单调栈 IOI 2015 Teams 分组 - Ameiyo - 博客园 (cnblogs.com)
  • 李超线段树 [HEOI] Segments 模板
  • 树链剖分+可持久化 Trie 树 https://www.luogu.com.cn/problem/P4592 RT
  • 树上主席树数颜色 [SDOI2018] 原题识别 见题解
  • BFS序+线段树[海亮NOIP集训]树[day6]ysy - 题目 - FZUOJ (fzoi.top) RT ,f[u][i]=f[f[u][i1]][i2] ,其中 f[u][1]=f[u][2]=1 ,即斐波那契定义下的祖先
  • 淀粉质 20211115 旅行 - 题目 - FZUOJ (fzoi.top) 考虑淀粉质,计算贡献时,标注一下这个点是属于分治重心的哪个子树,一个可贡献区间拆分成 L R 端点,按端点排序。记 cnti 表示子树 i 中可行区间数量。碰到一个 L,贡献+=当前所有可行区间-cnt_{L 所属区间} ,碰到一个 R, 对应子树 cnt 减少,当前可行区间个数减少。往下面继续分治即可
  • 莫队区间众数出现次数 P3709 大爷的字符串题 RT
  • 线段树优化BST建立/笛卡尔树 [TJOI2011] 树的序 RT

动态规划

  • 线段树辅助DP PYB 的字符串 - 题目 - FZUOJ (fzoi.top) 在序列没有修改的时候,我们设 f[i][j][k] 表示原串前 i 个字符,匹配串的 [j,k] ,可以不连续地出现次数。有修改,线段树区间合并,f[i][j][k]=f[l][j][k]+f[r][j][k]+f[l][j][h]×f[r][h+1][k] l,r 表示左右区间。求答案时,合并这 log 个区间即可。

  • 决策单调性 20211005 购票方案(VanishD day1) - 题目 - FZUOJ (fzoi.top) 容易得到方程,容易发现排序后存在决策单调性

  • 正难则反 20211005 直线相交(VanishD day1) - 题目 - FZUOJ (fzoi.top) f_(i,j)表示当前考虑了前i根木棒(前i根木棒和后面的都不平行),是否可以构成j个交点。转移:枚举最后一组平行的木棒数量k。则有方程:

    f_(i,j)=⋃_(k=1)^i f_(i-k,j-(i-k)×k) O(N^4)

    逆向DP 考虑当前的方案与最多的交点数(即全部两两相交相差的数量)那么将所有的木棒分成k组,每组内部都是互相平行的。数量为:a_1,a_2,…,a_k g_i表示与全满的状态相差i个交点至少需要多少木棒:

    gi=minj=1N(j+gij×(j1)/2)

    此时DP的时间复杂度为O(N3),考虑询问(N,M),他能完成当且仅当g_(N×(N-1)/2-M)≤N。总复杂度为O(N3+Q)

  • 容斥 20211005 记录数列(VanishD day1) - 题目 - FZUOJ (fzoi.top) 令sum_i表示存在至少i个相邻的区间能合并成更大区间的方案数 ans=∑_(i=0)^N sum_i×(-1)^i

    记 f_(i ,j,0 or 1) 表示考虑完第 i 段,存在至少 j 个相邻的段是可以接上的(即可以被看做一个更大的段),第 i 段序列是单调增的 0 还是单调减的 1。特殊处理 a[i]==1 的情况

  • 数据结构+决策单调性优化dp 20211005 模式匹配(VanishD day1) - 题目 - FZUOJ (fzoi.top)dp[i] 表示前 i 个字符可以构成的长度,dp[i]=max(dp[i1],dp[k]+4)k 满足 s[k+1] 在区间 (pre[i],i] 中出现过。显然,k 越大,dp[k] 越大,决策单调性。考虑维护 k 的位置,考虑在从 1 遍历到 n 的过程中,维护 pre[] ,并把每一个 [pre[i],i] 在线段树上加上 i。线段树维护最大值,k 就是线段树在 pre[i]-1 的最大值对应的位置。特殊在于 aaaa 满足条件,需要跳一位再询问。

  • DP套DP [HDU 6968]I love exam - 题目 - FZUOJ (fzoi.top)A[i][j] 表示第 i 门课,花费 j 天的最高提分,B[i][j][k] 表示前 i 门课,花费 j 天,挂掉 k 课,最高得分。 A 显然是一个背包,B 通过 A 转就可以了。在做 A 的同时,需要记录 cost[i] 表示第 i 门课不挂科的最少用时,以判无解

  • DP辅助DP [P7914 CSP-S 2021] 括号序列(民间数据) - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) [CSP-S 2021] 括号序列 题解 - lost_heart_hurts - 博客园 (cnblogs.com)

  • 状态结果交换 20211026 String - 题目 - FZUOJ (fzoi.top) 普通的,设 dp[i][j] 表示 a 匹配到 i 位,b 匹配到 j 位的最小步数,可以 O(|| n2) 解决问题,但是本题 n=5000 ,需要干掉字符集。考虑设 f[i][j]i 表示长度 ,当前 a 串上匹配到 jb 串上匹配最多能到哪。 注意到出现最少的字母至多出现 n/26 次,所以答案不超过 n/13+1。所以暴力转移(每次 )复杂 度就是严格 O(n2)

  • 树形DP 20211102 查询工资(lookup) - Problem - FZUOJ (fzoi.top)

  • 前缀和优化DP 20211102 多项式题(poly) - Problem - FZUOJ (fzoi.top)dp[i] 表示在 ii+1 之间截断,前面任意的答案。

  • 单调队列优化DP 20211101 电梯(elevator) - Problem - FZUOJ (fzoi.top)

  • 斜率优化DP [CEOI2017]Building Bridges 李超线段树维护,见题解

  • **树形DP ** 20211106 集合 - 题目 - FZUOJ (fzoi.top)B/F/C[x][k] 分别表示 x 子树内经过 k 个点(包含 x )的路径,起点终点都在 x/ 起点在x / 起点终点都不在 x ,转移即可(多画图!)

  • **数据结构优化 DP ** 序列(sequence) - 题目 - FZUOJ (fzoi.top)

  • 高斯消元期望DP 【HNOI2013】游走 考虑把边经过次数的期望转成点经过次数期望,点期望列出方程后直接高斯消元求解

  • 矩阵加速转移DP CF1151F 设 dp[i][j] 表示进行 i 次操作,最前面 m 个数中有 j0 的方案数,其中 m 表示全局 0 的个数。那么答案即为 dp[n][m]/dp[n][i] 。发现转移方程可以写成矩阵。

  • 前缀和优化DP AGC009C ,不妨设 A>B ,那么无解情况就是 a[i]a[i2]<B

    dp[i] 表示做到位置 i , iA 集合方案数,发现 j 若满足 k[j+1,i],a[k]a[k1]Ba[i]a[j]A 即可转移到 i ,发现这样的j在一段连续的区间。前缀和优化。最后用dp[i]计算出最终答案

  • 容斥DP ARC101E Ribbons on Tree 设 f(S) 表示 s 集合中的边不染色方案数, g[i] 表示 i 个点两两配对染色方案数,F(S) 也很好计算, 显然 S 将原树分割成了若干个连通块, 我们只要把联通块大小对应的 g 值相乘就可以得到了,经过简单的容斥后可以得到 ans=SE(1)|S|F(S) 。发现 f 的转移方式满足树形背包 DP 的形式,考虑设 dp[i][j] 表示在子树 i 内有 j 个点与 i 在同一个连通块的子树内匹配的方案数, 特别的, 令 dp[i][0] 表示子树 i 的点全部匹配的方案数,N2 转移即可

  • 交换答案状态 20211115 跑步 - 题目 - FZUOJ (fzoi.top) 省略

  • 前缀最大值优化DP tree - 题目 - FZUOJ (fzoi.top) 首先小心可能直径不经过环。考虑在环上 DP ,发现一个点可能可以和前面的组合,可以和后面的组合,也可以换个方向绕一圈,容易发现可以前缀最大值优化。

计数

  • 条件转化 [2021牛客提高第一场]与巨 - 题目 - FZUOJ (fzoi.top)
  • 计数DP [P2051 AHOI2009]中国象棋 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 按行考虑,设 f[i][j][k] 表示前 i 行,j 列填了一个棋子,k 列填了两个棋子的方案数
  • 计数DP+刷新 [P5456 THUPC2018]蛋糕 - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 发现每个维度相对独立,且当且仅当当前维度坐标达到上/下界接触面增加1。设 dp[i][j] 表示前 i维,接触了j面的方案数,讨论维度上界是否为1即可。这里需要采用刷新的方式。
  • 差分转化计数 [HDU 7055]Yiwen with Sqc - 题目 - FZUOJ (fzoi.top) 推狮子发现存在平方项,不好动态维护,考虑差分降次
  • 树上计数 「NOIP2014」联合权值 - 题目 - FZUOJ (fzoi.top) 容易算出每一个中转点的贡献
  • 条件转化+递推 基础计数练习题(perm) - 题目 - FZUOJ (fzoi.top) 发现 P>Q 和 P<Q 的方案数是相同的,那么 v[i]=12(i!f[i]) ,其中 f[i] 表示 1i 的排列,st,P=Q 的方案数。容易推得: f[i]=f[i1]+(i1)×f[i2] ,即形成 px=x 或者 (px=y,py=x) 的二元组。
  • 抽屉原理 CF850A Five Dimensional Points - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) 发现五维坐标有 5 条坐标轴,然后知道每个坐标轴分 + and - 所以我们任意将一个点作为坐标原点,这样知道当 n > 34 时一共有 33 个其余的点。根据抽屉原理,这样就至少有一个象限分到两个点。然后如果真的有的话,那么无论如何当前这个坐标原点所对的点不能成为“好点”。根据抽屉原理,知道当 n > 34 时答案永远是 0。
  • 计数DP ABC226F 见题解
  • 图上计数 20211108 黑白树 - 题目 - FZUOJ (fzoi.top) 考虑把直径提出来,对于普通的树,到一个点最远的点一定是直径的端点之一,先求出一条直径,若直径的两个端点颜色相同, 则最长距离一定为直径,否则,令两个端点分别为 x, y,枚举答案 d,所有到 x 距离 > d 的点颜色必须与 y 一样,所有到 y 距离 > d 的点颜色必须和 x 一样,由于 x, y 是直径的两个端点,可以发现,若一个点 z 到 x, y 的距离都不超过 d,则其到任何一个点的距离不超过 d,所以 z 的黑白并不会对答案产生影响。 具体的,找出直径,预处理直径到每一个点的距离,从大到小枚举 d,维护当前没有被限制的点的个数, 当出现 min dis(x, i), dis(y, i) > d 时说明 d 已经不合法。

构造

  • 分块 20210925 不等(pb day1) - 题目 - FZUOJ (fzoi.top) 如果没有 01 数量不相等的限制,那么直接令颜色等于 bitcount 的奇偶性即可。根据 n 的提示,可以想到用分块的方式调整数量。可以找到这样一个函数: 把 n 分成 n 块,那么一个 n 位二进制数的函数值是 1 ,当且仅当它至少一块全都是 1。我们让最后的颜色变成 奇偶性 函数值,那么, 一个函数值是 0 的数只有 n 块可能变成 1 ,每块都至多一种方案,所以函数值为 0 的数只有 n 种方法会变化;而 一个函数值为 1 的数只有在只包含一块的情况下会变,此时这个块长也是 n

  • 奇偶分析 CF550D Regular Bridge - 洛谷 | 计算机科学教育新生态 (luogu.com.cn) •由于是无向图,所以子图的总度数应为偶数。所以n和k都是奇数 。由于每个点的度数为k,所以一张子图至少要k+1个点,但k+1奇偶性不对,所以我们考虑k+2个点。将完全图删去(1,2),(1,3),(4,5),(6,7),…,(k+1,k+2)即可。

  • 贪心 [AGC010E] Rearranging 每个整数建一个点,不互质的连边。显然可以每个连通块求出答案后贪心合并。对于一个连通块,第一个数可以取最小的(记为x)。接下来考虑删去它之后的每个连通块,为了使x不被换到后面,每个连通块的第一个数必须是与x有连边的。同样每个连通块求出以后合并即可。

  • 树分块 [SCOI2005] 王室联邦 一个有效的构造是,递归处理每个点,每次把当前节点假如栈中,对于扫过每个儿子,看现在栈中的点个数是否 B ,是则分块。这样,子树中最多遗留 B1 个点,和另外一个子树一起,算上父亲,最多 2B1 个点。dfs 结束后,可能栈中还剩下 B1 个点,假如根节点所在的块中,大小 3B

posted @   _Famiglistimo  阅读(423)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 地球OL攻略 —— 某应届生求职总结
· 周边上新:园子的第一款马克杯温暖上架
· Open-Sora 2.0 重磅开源!
· 提示词工程——AI应用必不可少的技术
· .NET周刊【3月第1期 2025-03-02】
点击右上角即可分享
微信分享提示