自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(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

原创 leetcode hot100--动态规划【五步总纲】

dp[i]

2025-03-08 09:42:18 228

原创 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

原创 WPS中解除工作表密码保护(忘记密码)

2.wps中点击搜索,输入开发,选择开发工具。4.双击要选择的sheet。5.复制粘贴代码,运行。

2025-02-05 17:24:06 657

原创 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 hot--5动态规划

【代码】刷leetcode hot--5动态规划。

2024-12-04 23:55:40 128

原创 刷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

原创 刷LeetCode hot100--1.哈希表

哈希表--查找一个元素在不在数组/map/set中30min+几个问题。

2024-11-30 23:36:00 392

原创 服务器配环境

pyenv<适用Ubuntu 系统>

2024-11-28 13:12:20 548

原创 代码随想录day21【断更n月】--字符串

eg: aabaa 前缀:a,aa,aab,aaba。

2024-11-27 23:01:30 228

原创 机器学习(梯度下降python)

【代码】机器学习(梯度下降python)

2024-10-28 20:22:46 159

原创 刷代码随想录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

原创 刷代码随想录15--哈希表

参考三数之和思路,双指针法,设置left,right,与三指针法不同,这里需要两个for遍历i和j(一共四个变量)

2024-09-17 23:47:43 1022

原创 刷代码随想录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

原创 刷代码随想录11--哈希

详细看了解析(甚至看了三遍。

2024-09-09 23:40:38 292

原创 刷代码随想录10--哈希表

数值-->索引【除留余数法】哈希碰撞-->1.开放定址法,2.链地址法哈希表与map,set?

2024-09-07 00:32:01 275

原创 刷代码随想录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关注的人

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