草庐IT

关于 display: inline-block; 中间有间隙的问题

当我们给一个元素的一系列子元素设置display:inline-block;时,会发现子元素之间存在间隙,如div{display:inline-block;width:100px;height:100px;background-color:yellow;}页面显示是这样的,中间为何会有一条间隙呢?我们先用js获取到section,然后打印一下它的子节点,如下letsec=document.querySelector('section')letchildren=sec.childNodesconsole.log(children)打印结果页面显示为可以看出,我们只有两个div,但是打印出来七个

Golang 源码解读 01、深入解析 strings.Builder、strings.Join

本文从我的《TheGoProgrammingLanguage》学习笔记中分离出,单独成一篇文章方便查阅参考。strings.Builder源码解析存在意义使用\(strings.Builder\),避免频繁创建字符串对象,进而提高性能\(Source\file\)https://go.dev/src/strings/builder.go与许多支持\(string\)类型的语言一样,\(golang\)中的\(string\)类型也是只读且不可变的(\(string\)类型笔记 Goxmas2020学习笔记04、Strings-小能日记-博客园 )。因此,通过循环字符串切片拼接字符串的方式会导致

位运算

习题AcWing216,P2114,例题P4310,K2192(最大and值),P80190x01位运算位运算和按位贪心是常用的计算和优化手段。其中,按位枚举可以将线性级别的枚举优化至\(\log\)级别;由于二进制的独特性质\(2^0+2^1+\cdots+2^{k-1},也让从高位到低位的按位贪心成为了可能。本文接下来将介绍一系列的位运算基本技巧,并结合例题分析位运算优化的运用。位运算技巧位运算的基本运算符为:&,|,^,>,~,分别表示按位与、或、异或、左移,右移,取反。需要注意的是,由于位运算的优先级较低,运算时最好加上括号。假设二进制位的最低位为第\(0\)位,当前的数为\(x\),

Golang 源码解读 01、深入解析 strings.Builder、strings.Join

本文从我的《TheGoProgrammingLanguage》学习笔记中分离出,单独成一篇文章方便查阅参考。strings.Builder源码解析存在意义使用\(strings.Builder\),避免频繁创建字符串对象,进而提高性能\(Source\file\)https://go.dev/src/strings/builder.go与许多支持\(string\)类型的语言一样,\(golang\)中的\(string\)类型也是只读且不可变的(\(string\)类型笔记 Goxmas2020学习笔记04、Strings-小能日记-博客园 )。因此,通过循环字符串切片拼接字符串的方式会导致

位运算

习题AcWing216,P2114,例题P4310,K2192(最大and值),P80190x01位运算位运算和按位贪心是常用的计算和优化手段。其中,按位枚举可以将线性级别的枚举优化至\(\log\)级别;由于二进制的独特性质\(2^0+2^1+\cdots+2^{k-1},也让从高位到低位的按位贪心成为了可能。本文接下来将介绍一系列的位运算基本技巧,并结合例题分析位运算优化的运用。位运算技巧位运算的基本运算符为:&,|,^,>,~,分别表示按位与、或、异或、左移,右移,取反。需要注意的是,由于位运算的优先级较低,运算时最好加上括号。假设二进制位的最低位为第\(0\)位,当前的数为\(x\),

「双指针&前缀和&回溯法」weight

本题为3月14日23上半学期集训每日一题中B题的题解题面题目描述已知原数列\(a_1,a_2,\cdots,a_n\)中的前1项,前2项,前3项,...,前n项的和,以及后1项,后2项,后3项,...,后n项的和,但是所有的数都被打乱了顺序。此外,我们还知道数列中的数存在于集合S中。试求原数列。当存在多组可能的数列时,求字典序最小的数列。输入第1行,一个整数n。第2行,\(2\timesn\)个整数,注意:数据已被打乱。第3行,一个整数m,表示S集合的大小。第4行,m个整数,表示S集合中的元素。输出输出满足条件的最小数列。样例输入51257791213141441245样例输出11525提示数

2023.3.10 【模板】普通平衡树

2023.3.10【模板】普通平衡树推荐一篇写平衡树写的很好的博客:算法学习笔记(18):平衡树(一)-jeefy-博客园(cnblogs.com)问题陈述写一种数据结构,支持以下六种操作:1.插入一个数x2.删除一个数x3.查询x的排名(比x小的数+1)4.查询排名为x的数5.查询x的前驱6.查询x的后继这种操作可以用一个叫二叉查找树(BST)的东西实现,这玩意有以下性质:\[subtree(lson(x))翻译过来,就是一个节点左子树的值小于这个节点,右子树的值大于这个节点这样在理想状态下,就可以每次从树根开始,实现这个问题,设操作数为Q,则理论时间复杂度为\(O(Qlogn)\)但是会有

P9007 题解

首先大力推式子。为了方便,先假设\(2\leqz\)。\(x-\frac{y}{z}=n\)\(\frac{x-y}{z}=(n-1)!\)很显然的\(z|x\)以及\(z|y\)令\(m=\frac{x}{z}\)以及\(k=\frac{y}{z}\)得到\(\frac{m\timesz-k}{m-k}=n\)\((m\timesz-k)=n\times(m-k)\)\((m-k)+(z-1)\timesm=n\times(m-k)\)\((z-1)\timesm=(n-1)\times(m-k)\)\((z-1)|(n-1)\times(m-k)\)\((z-1)|(n-1)\times(

王树森Attention与Self-Attention学习笔记

目录Seq2Seq+AttentionAttention的原理方法一(Usedintheoriginalpaper)方法二(morepopular,thesametoTransformer)SummarySelfAttentionSimpleRNN与Attention当前状态计算对比ReferenceSeq2Seq+AttentionSeq2Seq模型,有一个Encoder和一个Decoder,默认认为Encoder的输出状态h_m包含整个句子的信息,作为Decoder的输入状态s_0完成整个文本生成过程。这有一个严重的问题就是,最后的状态不能记住长序列,也就是会遗忘信息,那么Decoder也

「双指针&前缀和&回溯法」weight

本题为3月14日23上半学期集训每日一题中B题的题解题面题目描述已知原数列\(a_1,a_2,\cdots,a_n\)中的前1项,前2项,前3项,...,前n项的和,以及后1项,后2项,后3项,...,后n项的和,但是所有的数都被打乱了顺序。此外,我们还知道数列中的数存在于集合S中。试求原数列。当存在多组可能的数列时,求字典序最小的数列。输入第1行,一个整数n。第2行,\(2\timesn\)个整数,注意:数据已被打乱。第3行,一个整数m,表示S集合的大小。第4行,m个整数,表示S集合中的元素。输出输出满足条件的最小数列。样例输入51257791213141441245样例输出11525提示数