草庐IT

代码随想录|Day 3|2023.7.28|链表part01

今日内容:链表理论基础,203.移除链表元素,707.设计链表,206.反转链表文章链接:代码随想录​题目链接:203.移除链表元素,707.设计链表,206.反转链表1.链表理论基础单链表:双链表:循环链表:链表的题目以单链表居多,其特性和数组等类型的区别在于节点的指向性。每个节点包含一个val,同时也指向下一个节点,这意味着和数组依靠索引去引用不同,对于某个节点的信息获取往往需要上一个节点来指向。这就涉及到许多常见的链表操作,比如删除和添加可以通过改变指向来实现,再比如对于头结点的处理往往可以建立虚拟头结点来实现。同时其长度也可以随着操作而不断改变,这和数组有很大的区别。链表与数组:定义:

洛谷题单 Part 6.7.1 矩阵

应队友要求,开始学线性代数,具体路线是矩阵→\rightarrow→高斯消元→\rightarrow→线性基。为多项式做个准备P3390【模板】矩阵快速幂题面板子,用结构体写的,感觉有点丑,一会儿看看题解有没有写得好看的#includeusingnamespacestd;typedeflonglongll;constintN=110;constllmod=1e9+7;structnode{lla[N][N];intlen;}sqr;voidsqr0(node&x){memset(x.a,0,sizeofx.a);x.len=sqr.len;}voidsqr1(node&x){memset(x.

代码随想录算法训练营第41天 | 动态规划 part03 ● 343. 整数拆分 ● 96.不同的二叉搜索树

day40休息日#343 整数拆分 花了好久理解intintegerBreak(intn){vectordp(n+1,0);dp[1]=1;dp[2]=1;for(inti=3;i=1;j--//intj=1;j自己AC花了30min,但后来理解随想录和我的不同的时候,想了一个多小时(也有放弃去做别的然后再返回来想,反正花了好久)主要在推导公式上,dp在把n需要的乘积分成两个部分,第二个部分找dp[]我写的:dp[i]=max(max(j,dp[j])*max(i-j,dp[i-j]),dp[i]);随想录的:dp[i]=max(j*max(i-j,dp[i-j]),dp[i]);我的能AC但

代码随想录算法训练营第22天 | 二叉树part08:● 235. 二叉搜索树的最近公共祖先 ● 701.二叉搜索树中的插入操作 ● 450.删除二叉搜索树中的节点

235 二叉搜索树的最近公共祖先用236普通二叉树(没顺序的)代码也可以过,但是本题还是要利用特性:搜索二叉树有序关键:如果一个节点的值在p和q之间(即p我觉得甚至不用随想录说的“第一次遇到cur节点是数值在[p,q]区间中,即节点5,此时可以说明p和q一定分别存在于节点5的左子树,和右子树中”第一次,就是只要满足就是了。不过他的意思应该是找到就行。如果数值在pq之间就一定是最近的了,因为再远的话,就pq都在一个子树里面了。我写的↓,我处理null确实和他gpt写的不一样 TreeNode*traverse(TreeNode*node,intlarge,intsmall){if(node->v

html - 可以制作 :after/before pseudo elements clickable as part of the link?

伪元素a:aftera:before允许您添加看起来是链接一部分的文本。但是,我似乎无法想出一种方法来使该部分作为链接的一部分可点击。例如,下面的css显示之后的url:a:after{content:"("attr(href)")";}...但它不会被点击。有人在不改变底层HTML的情况下解决这个问题吗?编辑:我使用的是chrome13.0.782.107。原来是bug.(感谢肖恩) 最佳答案 您似乎发现了所用浏览器的错误。基于spec,生成的内容应被视为为其生成的元素的子。我创建了一个JSFiddle对此进行测试,并且在大多数浏

html - 可以制作 :after/before pseudo elements clickable as part of the link?

伪元素a:aftera:before允许您添加看起来是链接一部分的文本。但是,我似乎无法想出一种方法来使该部分作为链接的一部分可点击。例如,下面的css显示之后的url:a:after{content:"("attr(href)")";}...但它不会被点击。有人在不改变底层HTML的情况下解决这个问题吗?编辑:我使用的是chrome13.0.782.107。原来是bug.(感谢肖恩) 最佳答案 您似乎发现了所用浏览器的错误。基于spec,生成的内容应被视为为其生成的元素的子。我创建了一个JSFiddle对此进行测试,并且在大多数浏

【全栈计划 —— 单片机】——Part_01 单片机数字电路基础+C51基础概念

🔔文章目录💓第一话——数字电路🌻1.1、电平特性1.1.1、简述TTL电平和CMOS电平🌴1.2、进制的认识和转换1.2.1、单片机中常见的二进制和十六进制💒1.3、二进制的逻辑运算1.3.1、与运算、或运算、非运算、同或运算、异或运算💓第二话——C语言基础🌻2.1.1、C51数据类型🌟2.2.1.1、基本数据类型🌵2.2.1.2、扩充数据类型⛵2.2.2、运算量🌱2.2.2.1、常量🎋2.2.2.2、变量🎀2.2.3、运算符🍄2.2.3.1、赋值运算符🍅2.2.3.2、算术运算符🍆2.2.3.3关系运算符🍇2.2.3.4、逻辑运算符🍍2.2.3.5、位运算符🍈2.2.3.6、复合赋值运算符🍉

【全栈计划 —— 单片机】——Part_01 单片机数字电路基础+C51基础概念

🔔文章目录💓第一话——数字电路🌻1.1、电平特性1.1.1、简述TTL电平和CMOS电平🌴1.2、进制的认识和转换1.2.1、单片机中常见的二进制和十六进制💒1.3、二进制的逻辑运算1.3.1、与运算、或运算、非运算、同或运算、异或运算💓第二话——C语言基础🌻2.1.1、C51数据类型🌟2.2.1.1、基本数据类型🌵2.2.1.2、扩充数据类型⛵2.2.2、运算量🌱2.2.2.1、常量🎋2.2.2.2、变量🎀2.2.3、运算符🍄2.2.3.1、赋值运算符🍅2.2.3.2、算术运算符🍆2.2.3.3关系运算符🍇2.2.3.4、逻辑运算符🍍2.2.3.5、位运算符🍈2.2.3.6、复合赋值运算符🍉

代码随想录算法训练营第21天 | 二叉树part07:● 530.二叉搜索树的最小绝对差 ● 501.二叉搜索树中的众数 ● 236. 二叉树的最近公共祖先

530 二叉搜索树的最小绝对差,关键:二叉搜索树和顺序有关的,全都用中序本题中序套模板,思路秒出。但是传var这里让我学到了。一开始写的是traverse(TreeNode*node,TreeNode*prev,int&min),发现就是prev没传对。后来prev改成globalvar就对了。TreeNode*prev;voidtraverse(TreeNode*node,int&min){if(node==nullptr)return;if(node->left)traverse(node->left,min);if(prev!=nullptr){min=std::min(min,std:

代码随想录算法训练营第18天 | 二叉树part05:● 513.找树左下角的值● 112. 路径总和 113.路径总和ii● 106.从中&后序遍历序列构造二叉树 105.从前&中序遍历序列构造

513找最左node(定义是最下层最左的,不能当做一直callnode_>left就行)一开始写了一个照模板无脑改的递归,会很容易voidorder(TreeNode*node,intdepth,vector>&res){if(node==nullptr)return;if(res.size()==depth)res.push_back(vector());res[depth].push_back(node->val);if(node->left!=nullptr)order(node->left,depth+1,res);if(node->right!=nullptr)order(node-