- 博客(6)
- 收藏
- 关注
原创 剑指offer第二版55-I 二叉树的深度题解笔记
题目:输入一棵二叉树的根节点,求该树的深度。从根节点到叶节点依次经过的节点(含根、叶节点)形成树的一条路径,最长路径的长度为树的深度。解题思路:不要被“路径”两个字绊住,看到“路径”就开始构思如何列出所有路径,实际上这道题只需要求深度,跟路径没有太大的关系思路一:树的深度与左、右子树深度的关系树的深度 = 左子树的深度和右子树的深度中的最大值+1因此只需要求出左子树的深度和右子树的深度,再取最大值然后+1即可。而求左子树的深度和右子树的深度的过程直接可以用递归代替:class So
2022-03-29 10:10:53 381
原创 《剑指offer第二版》题53-I.在排序数组中查找数字I笔记记录
题目:统计一个数字在排序数组中出现的次数。题目链接要点记录:题目本身不难,但解题巧妙点在于对“次数”概念的转化——次数=数字在数组中出现的右边界-数字在数组中出现的左边界——更精妙的转化:次数=数字在数组中出现的右边界-(数字-1)在数组中出现的右边界。这样思路的转化极大程度的减少了时间,提升了效率。代码实现:class Solution: def search(self, nums: List[int], target: int) -> int: def
2022-03-10 09:45:06 296
原创 剑指offer第二版题51.数组中的逆序对笔记
题目:在数组中的两个数字,如果前面一个数字大于后面的数字,则这两个数字构成逆序对。输入一个数组,求该数组的逆序对总数。题目链接解题思路:1.最直观暴力的解法:直接遍历,用多层循环去寻找逆序对。这样的方法会在LeetCode上超时(x)2.套用归并排序思想,采用分解——归并的步骤解决。将数组一步步对半拆开到每个数组中只有一个元素,只有一个元素的数组一定是有序的。 过程如图所示:(图源自LeetCode解析)当把数组拆分为只有一个元素之后,再把一个元素归并成包含两个元素的列表,归并的过程
2022-03-09 16:42:34 230
原创 《剑指offer第二版》题44:找寻数字序列中某一位的数字笔记记录
题目:数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从下标0开始计数)是5,第13位是1,第19位是4,等等。请写一个函数,求任意第n位对应的数字。题目:数字以0123456789101112131415…的格式序列化到一个字符序列中。在这个序列中,第5位(从下标0开始计数)是5,第13位是1,第19位是4,等等。请写一个函数,求任意第n位对应的数字。题目链接1.解题步骤解题步骤主要分为三步:①...
2022-03-07 11:32:19 164
原创 ValueError: check_hostname requires server_hostname的解决办法记录
在用pip安装scikit-image库时报错:ValueError: check_hostname requires server_hostname报错ValueError: check_hostname requires server_hostname通常是因为版本冲突等原因,查遍网上众多大佬总结的经验后,最终发现是由网络代理导致的问题,即我们通常说的vpn问题。关掉VPN后问题解决,scikit-image库成功安装!...
2021-06-27 17:46:17 93226 144
原创 实验室服务器linux环境下在虚拟环境上安装pytorch(CUDA8.0)
在尝试了各种方法后,终于成功在实验室服务器上安装成功Pytorch,下面分享一下自己的过程和一些避雷:1、首先安装anaconda比较简单2、在anaconda上使用清华源,这样下载速度会大大提升,不然下载太慢一晚上都下不完,具体步骤可以参考:https://blog.csdn.net/WannaSeaU/article/details/884270103、在Linux上输入以下指令查看CUDA的版本,因为安装pytorch要对应CUDA版本(如果没有CUDA则安装无CUDA版本的) .
2020-10-16 11:37:39 2058 1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人