- 博客(7)
- 收藏
- 关注
原创 进军大厂-从零开始算法基础(6)求出最多标记下标--力扣 go
这里主要解释一下为什么排序后从二分之n开始划分,首先要搞清楚,在本题的条件下,每个元素最多只能配对一次,也就是说,整个规模为n的数组,最多只能有2/n个配对。在这个前提条件下,我们可以假设一个极端情况,1,2,3,4,5,333,444,555,666,777。在这种情况下,我们可以非常明显的看出配对数量为5。大家对于为什么从2/n开始最优的疑问可能就是考虑在前半段中发生配对时,是不是配对数会高一些。
2024-09-12 16:16:14
41
原创 进军大厂-从零开始算法基础(5)螺旋矩阵--力扣 go
i < n;i-- {num++left++作者:代码随想录链接:https://leetcode.cn/problems/spiral-matrix-ii/solutions/1706277/by-carlsun-2-72fa/来源:力扣(LeetCode)
2024-09-08 17:06:48
941
原创 进军大厂-从零开始算法基础(4)长度最小的子数组--力扣 go
这里需要注意的点是,滑动fast的过程中,fast指向的值在判断sum时是还未加入sum的,所以不要用后面这种办法,因为在大的for循环中的前半部分fast已经加1,但是在sum中却没有加入新fast的指向值。这会导致数组越界或者永远无法加入最后一个元素的情况。
2024-09-07 11:58:29
120
原创 进军大厂-从零开始算法基础(3)有序数组的平方--力扣 golang
除此以外就是新建数组存取平方值,如果用原数组节省空间的情况下,会面临右侧数据不止一个小于左侧数据,这时仍然需要一个新的数组或者几个自变量对其进行存储。此题的主要问题就是一开始要记得将数组长度以及平方值先赋值给变量,这样可以节省很大一部分的计算资源(因为这个超时几次)。
2024-09-06 18:45:46
172
原创 进军大厂-从零开始算法基础(2)移除元素--力扣 golang
本题考验快慢指针基本功,代码思想较为简单,删除数组元素底层就是覆盖原有元素的空间,暴力算法两层for循环也可以解决类似问题,但是需要平方的复杂度,为了对此进行优化,本题建议使用快慢指针方法。这也是较为基础的一个算法思想,即设置一个快慢指针对数组或其他数据结构遍历,快指针不停的移动,满指针只有满足一定的条件才会移动。经过一段遍历以后显示出两个指针的快慢差距。本题就是在一次遍历过程中快指针不停移动,满指针在快指针指向值不等于删除元素时移动。动态图如下(图源自力扣代码随想录大佬)
2024-09-06 17:33:36
176
原创 Privacy and Security Requirements Challenges in Blockchain-Based Decentralized Federated Learning 分享
第一次分享联邦学习结合区块链方向的文章,分享的是CCFb类的一篇文章
2024-09-05 20:58:08
972
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人