随想录 最大值 随想 元素
代码随想录算法训练营第14天 | lc104、lc111、lc222
(本合集全部为Go语言实现) 相关文章链接:104题解 111题解 222题解 相关视频链接: Leetcode104 状态:这种简便的写法一开始忘了,看了题解才想到 实现过程中的难点:需要首先明确最终答案的得出是模拟了那种遍历方式 个人写法 func maxDepth(root *TreeNode ......
代码随想录算法训练营第13天 | 树的层序遍历、lc226、lc101
(本合集全部为Go语言实现) 相关文章链接:层序遍历题解 226题解 101题解 相关视频链接: Leetcode102 状态:迭代写法秒了,递归写法确实吗,没太能想到 实现过程中的难点:递归写法中,思想要转变。迭代写法是真正的按层遍历,递归写法是以类似深度优先的方式将遍历结果放到不同的层级的集合当 ......
代码随想录 小结02 链表
第一题 移除链表元素 这题比较简单 使用dummyHead的方式会比较简单 不需要对头指针进行单独处理 但是空间开销会大一些 第二题 设计链表类 这个没什么好说的 感觉有可能一些细节会忘记 需要经常复习的一块 第三题 反转链表 这题难度不大 用一个tmp指针存储一下当前指针的next 然后直接反转就 ......
代码随想录算法训练营第十八天 | 513.找树左下角的值,112. 路径总和,113.路径总和ii,106.从中序与后序遍历序列构造二叉树,105.从前序与中序遍历序列构造二叉树
一、513.找树左下角的值 题目链接: LeetCode 513.找树左下角的值 学习前: 思路: 层序遍历。采用递归和迭代两种方式 递归:定义最大深度和目标值两个成员变量,方法参数是结点和当前结点的深度;返回类型为void;终止条件为结点为空;单次循环内容为判断该节点是否符合目标要求,且分别传入左 ......
代码随想录 小结01 数组
数组篇一共有五个题目 第一题二分查找 值得注意的是,要自己想好 区间的边界到底是写左闭右开 还是左闭右闭 根据边界不同 while的条件和左右指针的移动会有差别 目前我的习惯是写左闭右开 还是固定一下习惯比较好 第二题是实现数组类的erase() 使用快慢指针可以做到在数组原地进行指定元素的移除而不 ......
JavaScript元素根据父级元素宽高缩放
/** * 等比缩放 * @param wrap 外部容器 * @param container 待缩放的容器 * @returns {{width: number, height: number}} * 返回值:width:宽度, height:高度 */ aspectRatio(wrap: an ......
代码随想录算法训练营第12天 | 树的遍历
(本合集全部为Go语言实现) 相关文章链接:递归遍历 迭代遍历 统一迭代法 相关视频链接: Leetcode94 状态: 实现过程中的难点:迭代法的模拟过程比较难想 个人写法 递归方式 func inorderTraversal(root *TreeNode) []int { var res []i ......
day03 代码随想录算法训练营 203. 移除链表元素
题目: 203. 移除链表元素 我的感悟: 题目里的节点是已经给好的, 创建虚拟节点,是为了方便处理头节点。 加油,我可以的!!!!! 理解难点: 节点已经给好的 创建虚拟节点 代码难点: p是临时变量,类似于for i in range(10) 这里的i,本身是用完就扔的。 返回值为什么不能是p. ......
代码随想录算法训练营第11天 | lc239、lc347
(本合集全部为Go语言实现) 相关文章链接:239题解 347题解 相关视频链接: Leetcode239 状态:记得是单调队列,但实际忘了实现细节,想了很久 实现过程中的难点:首先是得想到用单调队列解题,其次要搞明白单调队列的入队和出队的实现细节 本题中单调队列的细节 为什么不是优先队列:优先队列 ......
【图论】最大势算法
模板题Fishing Net 给定一个无向图,判断是否是弦图。 \(1 \leq n \leq 1000\)。 算法概述 最大势算法(MCS),是一个用于求出无向图完美消除序列的算法。算法流程为: 钦定一个集合 \(S\) 。 每次找到任意一个与 \(S\) 中的点连边最多的点,加入 \(S\) , ......
代码随想录day04 两两交换链表中的节点 删除链表的倒数第N个节点 链表相交 环形链表
两两交换链表中的节点题目: 这题画一下链表会比较清晰 写写画画指针位置很快就可以写出来 一开始以为一个tmp就够用了 写着写着发现需要多一个 代码: 删除链表的倒数第N个节点: 没什么思路 只好先看看视频思路 视频思路很简单也很清晰 只需要两个指针 一快一慢 两指针的间隔就是n 这样当快指针到末尾的 ......
JS 鼠标拖拽元素移动
代码示例 <!DOCTYPE html> <html lang="zh-CN"> <head> <meta charset="UTF-8"> <title>Document</title> <style> #wrap { width: 100px; height: 100px; background ......
代码随想录day03 链表删除 链表类的实现 反转链表
首先是链表的删除操作 热身题 这里使用了一个新的头指针 这样在删除头指针的时候就不需要进行额外的判断 然后是链表类的实现 需要一点背诵加上深刻理解 有时候理解了但是写起来还是会有些指针边界的小问题 应该多写写多记一下就会好了 还有就是手写链表要常复习吧 学习新语言应该也要对这些常用的数据结构进行手写 ......
代码随想录算法训练营第十七天 | 110.平衡二叉树,257. 二叉树的所有路径,404.左叶子之和
一、110.平衡二叉树 题目链接: LeetCode 110.平衡二叉树 学习: 思路: 后序遍历。实际上是由叶结点到根结点,若有一颗子树不是平衡二叉树,则直接返回给根结点 二、257.二叉树的所有路径 题目链接: LeetCode 257.二叉树的所有路径 学习: 思路: 递归+回溯。因为是线=先 ......
python_selenium定位页面元素
页面元素常用的定位方法有id、name、css、xpath id和name直接通过对应的值定位 class属性值有多个值时,使用css选择器定位只需要其中一个属性值即可,使用xpath时,属性值需要全部写上 示例:<input type="" autocomplete="on" placeholde ......
day02 代码随想录算法训练营 209. 长度最小的子数组
题目: 209. 长度最小的子数组 我的感悟: 滑动窗口, 每次计算当前位置的值, 满足要求就缩小, 这样左右两个指针都不回退。一直右走。 这个原理,还没太理解,感觉要在看看左神的视频。 理解难点: 为什么可以不回退。 代码难点: for 循环右边界 里面while判断是否满足要求 总结概括: 无 ......
day02 代码随想录算法训练营 977. 有序数组的平方
题目: 977. 有序数组的平方 我的感悟: 这道题,仔细观察,平方后两头的大。 用双指针,取两头,放到新的数组里。 新数组要求排序 所以,新的数组从后往前放 理解难点: 无他,多练习。 代码难点: 无 总结概括: 双指针 代码示例: class Solution: def sortedSquare ......
HTML之元素相对页面(视口)左上角的绝对坐标
目录一. 绝对位置二. 相对位置 一. 绝对位置 网页元素的绝对位置,指该元素的左上角相对于整张网页左上角的坐标。无论网页滚动条如何滚动,它都是不会变化的。 // 获取元素的绝对位置坐标(相对于页面左上角) function getElementPagePosition(element){ //计算 ......
day01 代码随想录算法训练营 27. 移除元素
题目: 27. 移除元素 感悟: 用快慢指针。 本题是要原地删除。 而删除这个行为在真实的计算机的数组里,是覆盖。 所以,就用两个指针,(人) 一个跑的快,一个跑的慢。他们身上带了个对讲机。 跑的快的那个人负责检测后面的数字符合要求不,比如,要不等于3的,遇到一个2,告诉跑的慢的说2符合要求。遇到一 ......
代码随想录算法训练营第十六天 |104.二叉树的最大深度,559.n叉树的最大深度,111.二叉树的最小深度,222.完全二叉树的节点个数
一、104.二叉树的最大深度 题目链接: LeetCode 104. 二叉树的最大深度 学习: 思路: 分别求左子树和右子树的高度,返回给根结点,加1之后是根结点的深度,这是后序遍历的思路 二、559.n叉树的最大深度 题目链接: LeetCode 559. N 叉树的最大深度 学习前: 思路: 后 ......
代码随想录day 02 双指针 滑动窗口 螺旋矩阵
有序数组的平方题目如下: 如果是可以使用O(nlogn)或以上复杂度的算法,本题可以简单的先平方一遍,然后使用排序算法就可以了 但是要求使用O(n)复杂度的算法,那么我首先想到的是昨天的快慢指针类似的想法: 我想先平方一次数组,然后从中间开始排序,如下 但是运行之后发现从中间开始进行相邻元素的比较好 ......
Web自动化测试 - 元素定位失败如何解决
首先要读懂失败的原因: InvalidSelectorException 错误的定位表达式 Invalid...错误,大概率是脚本错误 NoSuch... 不存在 ...Not...无法操作 ...Intercepted...操作出现意外 错误:找出错误原因,改正错误即可 不存在: 是否曾经存在 是 ......
极兔面试:一台服务器,支持的TCP连接数最大是多少?
文章很长,且持续更新,建议收藏起来,慢慢读!疯狂创客圈总目录 博客园版 为您奉上珍贵的学习资源 : 免费赠送 :《尼恩Java面试宝典》 持续更新+ 史上最全 + 面试必备 2000页+ 面试必备 + 大厂必备 +涨薪必备 免费赠送 :《尼恩技术圣经+高并发系列PDF》 ,帮你 实现技术自由,完成职 ......
在sql中实现取一行最大值或者最小值
原始数据和目标数据 实现SQL语句(最大) select shop, month, greatest(dz,fz,sp) as max from tablename; 实现SQL语句(最小) select shop, month, least (dz,fz,sp) as min from table ......
求最大公约数
欧几里得算法 基础:设有几个数\(a,b,c\)若\(a|b\)且\(a|c\)则\(a|b+c\)故而我们可以推出\(a|xb+yc\)我们可以推出\((a,b) = (b,a\mod b)\) 注:()是括号内两个数公约数集合 |是整除得意思。 证明:因为\(a \mod b == a - ......
实现div元素滚动条默认滚动到最底部(或最顶部)
实现div元素滚动条默认滚动到最底端 使用场景:聊天信息框 需要了解几个属性和方法: scrollHeight:元素高度 (包含滚动条隐藏部分) clientHeight:元素可视高度 (不包含滚动条隐藏部分) scrollTo(x, y):元素设置滚动位置方法 const box = docume ......
day01 代码随想录算法训练营 704. 二分查找
题目: leetcode 704. 二分查找 感悟: 困扰我多年的二分查找对于边界的判断,我终于理解了。 难点: 难点1:定边界right right = len(nums)还是len(nums)-1 难点2:while循环 while left < right 还是 left <= right 难 ......
代码随想录算法训练营第十五天 | 层序遍历 ,226.翻转二叉树,101.对称二叉树
一、二叉树层序遍历 题目链接: LeetCode 102. 二叉树的层序遍历 LeetCode 107. 二叉树的层序遍历 II LeetCode 199. 二叉树的右视图 LeetCode 637. 二叉树的层平均值 LeetCode 429. N 叉树的层序遍历 LeetCode 515. 在每 ......