- 博客(45)
- 收藏
- 关注

原创 C++知识回顾
2.允许把非const对象的地址 赋给指向const对象的指针,不能使用指向const对象的指针修改指向对象,然而如果该指针指向的是一个非const对象,可以用其他方法修改其所指向的对象。写法:const 指向类型 *指针变量/ 指向类型 const *指针变量(const 在*前面)【表示不能通过指针修改被指向变量的值】3.实际编程过程中,指向const的指针常用作函数的形参,以此确保传递给函数的参数对象在函数中不能被修改。1.不能把一个const变量的地址 赋给一个 非const对象的指针。
2024-09-01 22:23:05
490
原创 python/pytorch杂聊
这是一个字典(dictionary)的创建语句。在Python中,字典是一种可变的、无序的、键值对(key-value pairs)的集合。每个键(key)都是唯一的,且必须是不可变的类型(如字符串、数字或元组),而值(value)可以是任何类型的数据。字典通过键来访问对应的值,提供了快速查找和插入的能力。与普通字典类似,但它在创建时提供了一个默认工厂函数【比如defaultdict(list):当访问一个不存在的键时,】,当尝试访问一个不存在的键时,会自动为该键创建一个默认值,而不会抛出。
2025-04-01 18:05:38
198
原创 刷leetcode hot100--动态规划3.13/3.14
递推公式【就像集合划分一样,不重不漏】:f[i][j] = max( f[i-1][j] , f[i-1][j - k*w[i]]+k*v[i])【k>=0 && k<=V/w[i]】f(i,j) = max{含i,不含i} = max( f(i-1,j-w[i]) + v[i] , f(i-1,j) )f[j] = max( f[j] , f[j-v]+w](这次不需要倒着遍历j。N个物品,v[i],w[i],每个物品最多用0次,容量为V的背包,价值max。因此j倒过去遍历,这个好妙!
2025-03-14 18:28:41
983
原创 刷leetcode hot100--动态规划3.12
/负数:负数奇数【若无0,则为左边数组,右边数组取max】,有0,分成两半,看左边负数个数,右边负数个数,依旧是无0的操作。//首先不用管0,因为int a = 1,int max = nums[0],如果遇到0,a = 1即可。//一个很厉害的方法是从左向右和从右向左遍历一次,负数?//看了评论区,两个能合起来:负数偶数【不用管,遍历取max】,//负数和0分开处理,负数看奇数偶数,0分左右两边/就是0。//全是整数【负数,0,正数】,乘积max,连续子数组。//负数和0如何处理。
2025-03-13 00:19:01
451
原创 刷leetcode hot100--动态规划3.11
1.dp数组及下标含义:dp[n]:nums[0...n]的最长严格递增子序列长度【无法进行后续比较】dp[n]以nums[n]结尾的最长严格递增子序列对应的长度2.初始化:注意!!这里应该初始化为1,因为每一个字符单独拎出来这个子序列长度就是1!!!3.递推公式:dp[i] = max(dp[j]+1) 当nums[j]<nums[i](i>j)4.遍历5.打印数组注意::实际操作时,case:[0]输出了0,因为maxNum没进循环,所以还是0--->最好对特殊情况if--return提前处理第二
2025-03-11 23:54:41
180
原创 刷leetcode hot100--动态规划3.10
INT_MAX) 防止INT_MAX+1溢出【其实也就是 j <= sqrt(i)】2.j<=sqrt(i),"<=",要不然1没法遍历到完全平方数1;前提简要:昨天尝试,没什么想法,本来觉得maybe先求一下sqrt(n),确定一下阈值【其实也对】wordDict =["a","abc","b","cd"]在实操过程中,i/j/wordDict[j].size()我一直绕不清楚,太绕了……一般dp[n]遍历到n是更新的是dp[n],要不然逻辑太混乱。,要不然dp[1]没法是1,?【回溯:分隔回文串?
2025-03-10 17:46:46
333
原创 刷leetcode hot100--动态规划3.9
初版代码问题:1、只初始化了dp[i]==coins[j]的情况没有考虑如果e.g.10拿6块凑不了怎么办;以及初始化dp[i]=coins[j]没有用,会在for遍历中覆盖。p.s.还是没懂:为啥amount=11,coins=[1,2,5]输出-1,打印dp[i]都是10000?的原因,dp[nums.size()-1]必然不包含dp[nums.size()-2],:1.dp[0]=0【amount = 0的时候要能返回0,而不是-1】dp[n] = max(不包含dp[n-1])+nums[n]
2025-03-10 00:35:24
386
原创 GNSS定位与问题
差分GNSS定位技术:将一台已知精密坐标的接收机作为差分基准站,基准站连续接受GNSS信号,流动站(想得到自身位置)也接受GNSS信号,利用基准站定位位置/伪距和实际位置的差分调整自己的位置or基准站的GNSS测量原始值利用组合后的测量值求出基线向量完成相对定位,进而推算出测量点的坐标。1.电离层延迟误差:电离层中的中性分子受太阳辐 射的影响发生电离,产生大量的正离子与电子。在电离层中,电磁波的传输速率与电子密度 有关。3.卫星星历误差:由星历所给出的卫星位置与卫星实际位置之差称为卫星星历误差。
2025-03-05 17:08:06
193
原创 andorid 蓝牙相关
当一个协程挂起时(例如,等待 I/O 操作或另一个协程的结果),它会释放线程的控制权,让其他协程在同一线程上运行。这样,尽管在任意给定时刻只有一个协程在执行,但由于挂起操作的非阻塞性质,多个协程可以在同一时间段内完成它们的工作。协程:协程是用户态的轻量级线程,它们共享同一线程的栈空间,并且协程的切换通常比线程切换要快得多,因为它们不需要涉及操作系统的上下文切换。协程的挂起和恢复操作是由程序控制的,这意味着它们可以在更细的粒度上进行切换,从而实现更高效的并发处理。线程的创建、切换和管理需要较多的资源和时间。
2025-03-03 19:46:08
336
原创 关于GIS若干小知识
实际上图层使用的是投影坐标系(UTM_Modified),而地理坐标系(WGS 1984)是其基础参考系。UTM Modified投影是一种横轴墨卡托投影,它将地球表面上的点投影到一个平面上。在这个过程中,由于地球曲率的影响,投影后的图形会发生一定的变形。其中最显著的变形就是面积变形,即投影后的图形面积与实际地球表面上的面积并不相等。此外,从表格中可以看到比例因子为0.9996,这意味着投影后的长度比实际的长度缩短了约0.04%。:将球面坐标投影到平面上,使用线性单位(如米、英尺)表示位置。
2025-03-01 10:08:28
257
原创 调试无痛入手
Step In:进入函数内部,逐行查看。Step Over:跳过函数内部,直接执行当前行。Step Out:跳出当前函数,返回到调用处。
2025-02-23 22:13:49
377
原创 关于GeoPandas库
中的几何数据(通常是多边形,代表建筑物)构建的。空间索引是一个数据结构,它允许快速的空间查询,比如查找特定几何形状(点、线或面)周围的几何形状。空间索引通常是基于 R-树 或其变体构建的,这些数据结构专为空间查询优化,可以显著提高查询效率,尤其是在处理大型数据集时。这行代码创建了一个空间索引对象,这个对象是基于。
2025-02-23 22:02:50
237
原创 android studio无痛入门
在app/src/main/java目录下,你可以找到主活动(MainActivity)的文件,通常是以.java或.kt结尾的文件。添加资源:如图片、字符串等,分别在app/src/main/res/drawable、app/src/main/res/values等目录下操作。在app/src/main/res/layout目录下,你可以找到XML布局文件,例如activity_main.xml,用于定义用户界面。编写代码:在app/src/main/java目录下创建或修改.java或.kt文件。
2025-02-07 17:25:10
585
原创 2024.1版android studio创建Java语言项目+上传gitee
1.解决Cannot check the working tree for unmerged files because of an error. detected dubious ownership in repository at 'D:/' 'D:/' is owned by: *** but the current user is: ***p.s.添加gitee账户选择password时,填的是邮箱和密码,邮箱建议添加一个,不要用默认的(默认的***+***会有问题)
2025-02-04 10:39:25
611
原创 刷leetcodehot100-7动态规划
原来考虑:循环到i时,不能要nums[i-1],可以要nums[i-2],nums[i-3],怎么办呢,维护一个max?动态规划思路:nums[i]要不要,不要,就+nums[i-1];要,就+nums[i-2]因为本题nums值都是正数,也就是越多越好,越大越好。但这样没有考虑nums【i】要不要。12min,虽然参考了一下答案。最爽的一集,记录一下。
2024-12-09 22:38:35
270
原创 刷leetcode hot6--动态规划【不放弃版】
如果打印出来和自己预先模拟推导是一样的,那么就是自己的递归公式、初始化或者遍历顺序有问题了。然后再写代码,如果代码没通过就打印dp数组,看看是不是和自己预先推导的哪里不一样。动规是一个大问题可以迭代为几个小问题【递归:一层层return;动归中我们假设前几个问题已经解决,则后一个问题就是关于前几个问题的线性解。如果和自己预先模拟推导的不一样,那么就是代码实现细节有问题。之前一直没有转换为矩阵或者数组这种数据结构。
2024-12-07 23:01:15
398
原创 刷leetcode hot4--双指针(30min)
本来想着不是0和是0的交换,发现可能没换完,ij就到后面了,没办法判定后面还有没有非0的。两个非常独立,一个遍历,一个捡不是0的放在数组前面。
2024-12-03 23:58:00
93
原创 刷leetcode hot100--3贪心(30min,看思路)
从i=0到cover去维护就很妙,因为这样可以全覆盖【不是仅仅从一个点跳到一个点】,而且避免了回溯的尴尬。贪心局部的最优,和股票一样,维护一个最什么的值。
2024-12-02 21:54:03
363
原创 刷leetcode hot100--2 贪心
初步思路: min,max min在max前面,解决;自己手动模拟,如果模拟可行,就可以试一试。通过局部最优,推出整体最优。买的一定是卖之前max,维护。如果不可行,可能需要。
2024-12-01 22:28:50
300
原创 刷代码随想录day20--字符串
简单想的话需要开辟新的空间,少开辟一点开一个vector存后面的字符,然后双指针往后移动前面的字符,最后前面的字符被赋值为vector中的存储。
2024-09-26 22:01:16
189
原创 刷代码随想录19--字符串(1h)
先说一句,折在这道题太久了,呜呜每天做题不要断开,要不然就想一直拖,呜呜呜比较前后字符串,1.删空格2.reverse3.单词reverse:s.resize(n)中n是数组长度,这里为什么可以用j呢,因为s【j】=s[i]之后,j++,即j现在至少是s.size()
2024-09-25 21:12:01
278
原创 刷代码随想录18--字符串
2.这个双指针很巧妙,从后往前补数据,一个是旧数组的索引个,一个是新的,效果与开了一个新数组一样。:1.是‘0’而不是0,0是一个int,而‘0’的ASCALL不是0,所以注意。刚开始甚至卡在了数字和字母怎么区分:if in ‘0’~‘9’处理字符串,一般会定义一个string类型。
2024-09-21 20:27:27
258
原创 刷代码随想录16、17--字符串
1.reverse(s.begin(),s.begin()+i)翻转的是s[0]到s[i-1]p.s.之前有考虑i超过边界,但i-2*k到i之间数没有考虑全怎么办。注意区分是s.size()还是s.size()-1。2.i~i+k一共有K+1个数。
2024-09-19 21:03:35
180
原创 刷代码随想录14--哈希表
先是没看到重复的三元组也算重,于是写了如果result最后一组vector和当前要插入的一样,那就不要插;于是加了对nums【i】的去重: if (i > 0 && nums[i] == nums[i - 1]) continue;然后就是一些continue,break搞反了,没操作left,right陷入死循环等的问题,见注释。确实,哈希表适合i,j,k可重复,即遍历a[i],找有没有0-a[i]代码随想录给出了双指针法,个人感觉移动有一点像快排。那么,i,j,k不重复怎么办。
2024-09-16 20:55:32
522
原创 刷代码随想录13--哈希,auto
需要返回索引,即索引与数值对应,需要用到map使用“auto”关键字可以简化代码,特别是在处理复杂类型时map的使用。
2024-09-13 23:16:42
314
原创 刷代码随想录12--哈希(20min)
为啥这道题要用哈希呀,一步步化解,找到了关键:如果和出现重复值,就返回false。需要在()中指出num为int类型,否则编译不过。特别注意:for(int num:res)//部分为第二次debug才注意到的点。
2024-09-10 19:00:20
219
原创 刷代码随想录09--链表
可以自己画一个圈,在此刻,相当于fast追slow,从物理意义将,fast位移x1是个负值,x1 = -k;x = (n-1)(y+z)+z,结合上图,即一个指针从head走,一个从fast和slow相交点走,相同速度总会相遇。-->【slow在环入口时,fast在环入口任意位置(不考虑就在环入口这个特殊情况),这里假设在位置k处。fast和slow速度比2:1,时间相同,距离【x+y+n(y+z)】 : (x+y)得:2(x+y ) = x+y+n(y+z)可以自己画一个x-t图,会发现会相交的。
2024-09-05 23:35:43
457
原创 刷代码随想录08 回溯+链表
这里创建了vector以及vector,利用.push_back(),pop_back()其实有点蒙,二维数组,如何行数不定,列数固定。
2024-09-04 13:00:35
231
原创 刷代码随想录07--链表+回溯
思路:先知道链表有size个元素,在第size-n个元素基础上p->next = p->next->next;(不用考虑p->next->next是不是nullptr,即使是直接赋值给p->next就行)代码随想录:双指针的经典应用,如果要删除倒数第n个节点,让fast移动n步,然后让fast和slow同时移动,直到fast指向链表末尾。但是挺抽象的,感觉很难想需要检验的特殊情况(n==链表长度),让我想到了软件测试:测试用例的设计?使用虚拟头指针,不用单独考虑删除头的情况。看了一眼提示,开干!
2024-09-03 20:33:08
351
原创 刷代码随想录06--链表
相当于只移动了current一个指针,代码见代码随想录。都涉及q->next = p;其次,1.p->q->r->m变成q->p->m。有几种情况:首先是链表头指针为空和只有一个元素。2.p->q->r变成q->p->r。
2024-09-02 23:22:44
265
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人