自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(20)
  • 收藏
  • 关注

原创 leetcode刷题-二叉树03

深度为到根节点的距离,如节点20,深度为2;高度为到叶子节点的距离,如节点7,高度为1,节点20,高度为2,节点3,高度3。,前中后序都可以求得二叉树的节点个数,层序遍历的迭代法也可以。如果是满二叉树的话 ,向左遍历的深度和向右遍历的深度是相等的。子树如果为满二叉树可以根据公式计算节点数量,然后返回给根节点。除了底层节点,上面的节点都是满的,底层节点从左到右是满的。(迭代法:层序遍历)后序遍历:将孩子节点的情况返回给根节点,根节点记录。最小深度:根节点到最近叶子节点的深度。二叉树的最大深度:根节点的高度。

2024-06-12 16:11:52 760

原创 leetcode刷题-二叉树02

相关题目:LeetCode:102、104、107、111(前面已完成)、116、117、199、429、515、637。不能判断左右孩子是否相等,应该判断根节点的左子树和右子树是否可以相互翻转,↑翻转二叉树。确定遍历顺序:只能使用后序遍历(左右根),因为要不断收集左右孩子的信息返回给上一个节点。图论中的深度搜索和广度搜索分别对应二叉树中的递归遍历和层序遍历。想清楚这道题目应该用哪种遍历方式:递归(前、中、后序)?依赖队列完成,每一层要记录队列中的size,以便后续弹出元素。本题使用前序或者后序最为方便。

2024-06-11 20:39:30 448

原创 leetcode刷题-二叉树01

与图论中的两种遍历方式一致:深度优先搜索,广度优先搜索。

2024-06-06 21:34:18 265

原创 leetcode刷题-栈与队列03

239. 滑动窗口最大值347.前 K 个高频元素栈与队列总结栈与队列的底层实现栈经典题目括号匹配、字符串去重、逆波兰表达式队列经典题目滑动窗口最大问题、求前K个高频元素通过求滑动窗口最大值,以及前K个高频元素介绍了两种队列:单调队列和优先级队列,这是特殊场景解决问题的利器,是一定要掌握的。

2024-06-06 11:33:12 440

原创 leetcode刷题-栈与队列02

来解决,该题难点在于删除完目前存在的重复项之后可能会出现新的重复项,类似消消乐游戏。遍历完后,如果栈中还存有元素(栈不为空)【说明不匹配,字符串无效,情况1】没有必要真的用一个栈,可以使用一个字符串去模拟栈的行为,【若字符串还没遍历完,栈为空,说明字符串无效,情况3】遇到右括号,弹出栈中的元素,比较两个右括号是否一样。注意:将字符串的尾部作为栈的出口,头部作为栈的顶部。【若不匹配,说明字符串无效,情况2】-7 // 2 # 结果为 -4。7 // -2 # 结果为 -4。6//-132 结果为 -1。

2024-06-04 00:30:19 844

原创 git使用

执行 git branch -M main时,提示 error: refname refs/heads/master not found。进行改名操作,将master改为main,改名之后还不行,那注意可能漏掉了commit。如果vscode中有不想上传到github上的文件,可以存放在.ignore文件夹下。完成ssh key及后续的设置。

2024-05-28 21:09:07 216

原创 leetcode刷题-栈与队列01

栈提供push 和 pop 等等接口,所有元素先进后出,所以栈不提供走访功能,也不提供迭代器(iterator)。因此这里使用双向队列,我们保证只执行popleft()和append(),因为deque可以用索引访问,可以实现和peek相似的功能。在push数据的时候,只要数据放进输入栈就好,但在pop的时候,操作就复杂一些,输出栈如果为空,就把进栈数据。用一个队列即可实现栈的进出元素,将前面的元素取出来后再加入队列中,弹出队列元素数量-1个元素。用两个栈(输入栈、输出栈)实现一个队列的行为。

2024-05-24 20:47:37 558 1

原创 leetcode刷题-字符串02

卡码网题目链接代码随想录文档讲解思路python代码lst = list(s) # Python里面的string也是不可改的,所以也是需要额外空间的。空间复杂度:O(n)。

2024-05-10 21:28:52 514 1

原创 git拉取GitHub大文件到服务器报错解决

1)使用git命令增大缓存(单位是b,524288000B也就500M左右)以上两种方式依旧无法clone下,尝试以浅层clone,然后更新远程库到本地。使用git config --list查看是否生效,此时重新克隆即可。使用git将github上的文件拉取到服务器上产生如下报错。

2024-04-24 16:12:21 303 2

原创 leetcode刷题-字符串01

使用双指针法来去移除空格,最后resize(重新设置)一下字符串的大小,就可以做到O(n)的时间复杂度,O(1)的空间复杂度。代码看了好久才明白,整体思路为:删除空格时,按照27.移除元素的思路进行【while部分代码】,但是需要在每个单词前面添加一个空格(除了第一个单词)【if部分代码】由于python中字符串是不可变类型,所以反转单词的时候,需要将其转换成列表,然后通过join函数再将其转换成列表,所以代码实现略有不同。先将整个字符串反转(此时单词本身也倒序了),再将里面对的单词反转一次。

2024-04-24 13:16:37 406 2

原创 模型保存与加载

先上代码......# 创建Trainer# 开始训练# 开始评估模型# 保存模型 会保存到配置的output_dir处# 使用训练好的模型Pytorch是深度学习领域中非常流行的框架之一,支持的模型保存格式包括.pt和.pth .bin .onnx。这几种格式的文件都可以保存Pytorch训练出的模型,但是它们的区别是什么呢?

2024-04-22 11:35:59 202 1

原创 leetcode刷题-哈希表02

一般来说哈希表都是用来快速判断一个元素是否出现集合里。对于哈希表,要知道哈希函数和哈希碰撞在哈希表中的作用。哈希函数是把传入的key映射到符号表的索引上。哈希碰撞处理有多个key映射到相同索引上时的情景,处理碰撞的普遍方式是拉链法和线性探测法。接下来是常见的三种哈希结构:数组set(集合)map(映射)在C++语言中,set 和 map 都分别提供了三种数据结构,每种数据结构的底层实现和用途都有所不同。数组作为哈希表。

2024-04-16 22:27:06 841

原创 leetcode刷题-哈希表01

set集合容器实现了红黑树(Red-Black Tree)的平衡二叉检索树的数据结构,在插入元素时,它会自动调整二叉树的排列,把元素放到适当的位置,它不会插入相同键值的元素,而采取忽略处理。哈希表擅长:给你一个元素,判断在集合里是否出现过,再具体分析用数组、set还是map:如果数值很大不适合用数组,而且如果哈希值比较少、特别分散、跨度非常大,使用数组就造成空间的极大浪费。既要获取这个元素的值,又要获取这个元素的下标,用数组和set都不行了,用map,key(元素):value(下标)。

2024-04-16 16:53:07 566

原创 leetcode刷题-链表02

fast指向第n+1个节点(为什么是n+1呢,因为只有这样同时移动的时候slow才能指向删除节点的上一个节点(方便做删除操作))可想而知,无论n为多少,x都等于z,所以判断存在环之后,要寻找环形的入口节点,定义index1和index2,让它们同时移动就可以了(另一个快慢指针),即进入环后快指针每次距离慢指针都减少一个节点,所以它们一定会相遇,而不会出现快指针跳过慢指针的情况,并且在慢指针进入环的第一圈就会相遇。fast指向第n-1个节点。快指针走了x+y+n(y+z)个节点,n是快指针转的圈数,n≥1。

2024-04-11 14:27:45 694 1

原创 leetcode刷题-链表01

C/C++中定义链表节点的方式// 单链表int val;// 节点上存储的元素// 指向下一个节点的指针ListNode(int x) : val(x), next(NULL) {} // 节点的构造函数// 初始化节点// 也可使用默认构造函数初始化节点python中定义链表节点的方式。

2024-04-10 22:06:53 1633 1

原创 leetcode刷题-数组2

2)滑动窗口法:类似双指针法,用一个for循环做两个for循环的事情,j指向滑动窗口的终止位置,如何动态调整起始位置?如果两端的值一样大(nums[l]==nums[r]),先更新哪个都可以,代码可直接写 if…1)最直接的想法:两层for循环遍历所有可能的区间,再取长度最小的(暴力解法),时间复杂度O(n^2)因为平方后最大值也一定是在两端,所以比较两端的数平方后的大小,可实现从大到小排序,题目要求,按。两层循环,第一层循环找要删除的数组元素,第二层for循环把后面的元素一个一个向前覆盖。

2024-04-09 22:26:21 578

原创 leetcode刷题-数组01

左闭右开,左开右闭?(两种写法)

2024-04-08 21:18:44 851

原创 服务器上安装pytorch的一些总结

[TOC]服务器上安装pytorch的一些总结。

2023-09-20 11:51:09 210 1

原创 Python中dataframe的to_list和to_list()差距

先新建一个dataframe数据框df = pd.DataFrame({'a':[1,2,3], 'b':[3,4,5], 'c':[5,6,7]})df结果然后看一下两者的区别dataframe的to_list1df['b']结果0 31 42 5Name: b, dtype: int642df['b'].to_list结果<bound method I

2022-03-23 11:08:30 5462

原创 Python cvxpy库下载心得

Python cvxpy库下载的一些心得离线安装whl轮子在此过程中遇到了一个问题,就是pip无法使用在线安装库可在jupyter中安装在cmd中安装离线安装whl轮子在文件夹中下载好安装包,打开“命令提示符” cmd,cd、d: 之后转到下载好的文件夹的位置,使用 pip加安装包的全名,进行安装。在此过程中遇到了一个问题,就是pip无法使用解决方法:在环境变量中添加python(anaconda)所在的文件位置,同时添加pip.exe所在的文件位置。在线安装库可在jupyter中安装使用命

2022-02-07 17:12:20 1065

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除