- 博客(118)
- 收藏
- 关注
原创 Django连接mysql数据库报错ModuleNotFoundError: No module named ‘MySQLdb‘
是不是很诧异明明pymysql库也安装了,setting.py文件也配置好了为啥报错。
2024-12-19 10:57:41
546
原创 python如何操控mysql
搜索说是需要 pip install cryptography。每次都需要commit太麻烦了,可以在建立连接时自动提交。
2024-12-18 18:25:04
552
原创 如何用anaconda管理python环境
当我们想学习某项技术或编写某程序时可能会用到不同的python版本,那么可以在这里创建新环境 ,命令为。比如我创建一个name为pytorch的环境,里面的Python版本是3.12。单击打开 Anaconda Prompt,可以看到以下画面,默认环境是base。看到激活后左边括号里的环境名变成了刚刚创建的pytorch环境。创建成功后激活环境也就是选择该环境,命令如下。然后写项目的时候就可以选择conda里的环境。关于conda的更多命令请看我的另一篇博客~安装好后可以看到有这些文件。
2024-12-18 18:20:46
479
原创 如何修改anaconda中新建环境abc的Python版本,创建环境abc时指定的是3.12现在想换成3.10
再找到该环境下的python.exe,鼠标静置在上面查看版本。我原有环境pyspark的Python版本如下。与命令行检查一致,成功!在该环境下,执行下列代码。再次检查Python版本。
2024-11-25 15:09:10
292
原创 协同过滤——当前推荐技术和算法中使用最广泛和认可度最高的算法之一
协同过滤指的是根据与某个人(或商品)的相似物的分析,来判断此人(或商品)的特点、价值和潜在属性。简单来说就是它给A推荐与A兴趣相似的人的东西,或与A喜欢的物品相似的其他物品。
2024-11-05 21:57:42
698
原创 复合函数求导你还不会?
复合函数定义h(x)=f(g(x))首先给出其求导公式h'(x)=f'(g(x))g'(x)看着是不是很懵,先别管跟我步骤走~~~
2024-10-15 19:25:42
1052
原创 什么是联邦学习
联邦学习就是一种在保护隐私的前提下,通过合作学习来提高模型性能的方法。它允许我们在不直接分享数据的情况下,共同构建出更强大、更准确的模型。
2024-10-14 20:17:49
456
1
原创 关于Integer和int的拆箱和装箱
Integer称为包装类,所以自动装箱自然是相对于int来说,转化为Integer。相反,拆箱就是Integer转int。
2024-10-11 17:46:02
349
原创 ArrayList<List<Integer>> lists=new ArrayList<List<Integer>>();怎么转成int[][]
stream流,思路就是先把lists里面的每个list转成array,之前的方法list.stream().mapToInt(Integer::intValue).toArray() 然后再整体转成array。
2024-10-10 22:08:10
162
原创 用IntStream生成0到n的流,并找出不在numSet中的数字列表
看完后,你发现直接把findFirst()后面的删掉,转成数组,再通过stream流把数组转为列表就欧克。中的数字,并以数组的形式返回结果。先看这题低配版的逻辑。
2024-10-10 19:21:25
177
原创 Boyer-Moore摩尔投票法
remove的时候注意remove有2种参数,一种是下标,一种是元素。因为元素类型正好是Integer,所以不管填下标或是元素都会默认成下标。正好符合我们的需求。若你需要删除元素,看我这篇文章。的元素,直到投票过程无法继续,此时数组为空或者数组中剩下的元素都相等。如果数组为空,则数组中不存在主要元素(数组中占比超过一半的元素);如果数组中剩下的元素都相等,则数组中剩下的元素可能为主要元素。在每一轮投票过程中,从数组中删除。
2024-10-10 18:51:31
499
原创 用IntStream生成0到n的流,并找出不在numSet中的数字
n代表的是nums的长度,并从流中过滤出(就是找到)不在numSet中的数字,num指的是流中的元素。首先将nums转化为HashSet,这里也可以不一定是HashSet,是ArrayList也可以。巧妙利用stream流,不得不说stream真厉害!这个范围内没有出现在数组中的那个数。再用IntStream生成0到n的流。整体思路就是标题说的那样。
2024-10-09 18:11:09
264
原创 Java增强for循环遍历集合删除指定值不安全问题
在这里因为remove方法有两种参数,一种是对象(删除此元素),一种是Integer (删除此下标对应的元素)。恰好我对象类型就是Integer,所以或默认为删除下标对应元素,造成下标越界不安全。可以把list转化成Iterator,如下。
2024-10-01 15:48:11
348
1
原创 HashMap中常用的函数
3、如果key为a的键不存在,则存入键值对(a,1),存在则返回value。2、返回key为a的value,若没有该key返回0。2、如果key为a的键不存在,则存入键值对(a,1)2、判断是否有value为1的键值对。判断是否存在某key或value。1、判断是否有key为a的键值对。1、返回key为a的value。1、新增键值对(a,1)
2024-09-07 21:22:24
435
原创 查找算法你知道哪些?
表示斐波那契数列中的第k个数)。如果数组长度本身就是斐波那契数,则直接使用;如果不是,则选择第一个大于或等于数组长度的斐波那契数。:由于斐波那契数列中的数可能大于数组的实际长度,算法通常会在原数组末尾添加一些与数组最大元素相同的值,直到数组长度等于。时,查找失败,返回-1。但在实际实现中,由于扩展了数组,如果最后。指向了扩展部分的某个位置,也需要返回-1或进行相应调整。:在返回结果之前,需要移除扩展部分的元素,恢复原数组。:首先,需要确定斐波那契数列中第一个>=数组长度的数。
2024-09-06 20:44:32
1059
原创 快速幂算法——求解大指数幂
快速幂算法(Fast Exponentiation)是一种高效的计算幂的方法,特别适用于计算形如 a^b的表达式,其中a 是底数,b 是指数,且 b 可能非常大。
2024-09-05 00:15:00
654
原创 Java如何计算一个数的阶乘末尾有多少个零?
文章有点长,请耐心看完~~~这个问题涉及到阶乘(factorial)的一个有趣特性,即阶乘结果末尾零的数量。要理解这一点,我们首先要知道什么情况下一个数的末尾会产生零。
2024-09-04 11:34:44
617
原创 error: local variables referenced from a lambda expression must be final or effectively final
在拉姆达表达式中操作外部定义的局部变量时报错,因为外部定义的局部变量flag不是常量。循环(也称为 "for-each" 循环)来遍历。中的条目(即键值对)。
2024-08-16 21:07:52
707
原创 java判断字符串某字符是否为大写/小写/数字?
也可以将字符转化成小写字母或大写字母。a不是大写返回false。a转化成大写字母后为A。A转化成小写字母后为a。1是数字返回true。a是小写返回true。
2024-08-15 17:13:52
243
原创 字节码文件和class对象是不是一样的?
字节码文件是Java源代码编译后的结果,而Class对象是JVM在加载这些字节码文件到内存时创建的,用于表示这些类。相当于没有字节码就没有class对象。
2024-08-12 20:21:53
160
原创 Java异常有哪两大类
Java异常体系主要分为两大类:受检异常(Checked Exceptions)和非受检异常(Unchecked Exceptions),后者又可以进一步细分为运行时异常(Runtime Exceptions)和错误(Errors)。比如数组越界、空指针异常。系统级的错误或者资源耗尽。
2024-08-12 19:29:45
1072
原创 静态变量和实例变量的区别
静态变量:在定义时需要在变量名前加上static关键字。静态变量也称为类变量,因为它属于类本身,而不是类的某个特定实例。实例变量:在定义时不需要加static关键字。实例变量属于类的实例(对象),每个对象都有自己独立的实例变量副本。
2024-08-12 18:47:51
568
原创 ThreadLocalMap存在哪里?
此外,需要注意的是,ThreadLocalMap中的key是ThreadLocal对象的弱引用,而value是强引用。具体来说,当线程调用ThreadLocal的set方法设置变量时,JVM会获取当前线程,并在其内部的ThreadLocalMap中为该ThreadLocal对象存储一个值。ThreadLocalMap的设计使得每个线程能够拥有自己的变量副本,这些副本对其他线程是不可见的,从而实现了线程之间的数据隔离。
2024-08-12 18:40:23
252
原创 Java对象序列化
想象一下,你有一个Java对象,它包含了各种数据(比如名字、年龄、分数等)。现在,你希望把这个对象保存到一个文件中,或者通过网络发送给另一个程序。但是,Java对象本身并不能直接写入文件或通过网络发送,因为它们是以内存中的数据结构形式存在的。这时,序列化就派上用场了。序列化是一种将Java对象转换成一系列字节的过程,这些字节可以被保存到文件中,或者通过网络发送给其他程序。接收方可以通过反序列化过程,将这些字节重新转换回原来的Java对象。
2024-08-12 12:01:16
509
原创 Java中wait()和sleep()的区别
主要用于暂停当前线程的执行一段时间,让出CPU资源给其他线程使用。不会释放当前线程所持有的任何锁。主要用于线程间的通信和同步。
2024-08-10 17:21:39
418
原创 关系数据库的三大范式
在第一范式的基础上,每个表必须有主键且表中的所有非主键字段都完全依赖于主键,也就是说非主键字段都必须跟主键有关。只能拆分成3条数据。
2024-08-09 00:52:36
204
原创 一天一个Arrays小知识——Arrays.asList()
是 Java 中的一个静态方法,它属于类。这个方法的主要作用是(List),但这个列表是由原数组支持的,也就是说,列表是非同步的,并且其大小是固定的,因为列表的大小是由原数组的大小决定的,add()remove()。
2024-08-08 15:59:52
582
原创 Arrays.sort()是对整个数组进行排序,如何只排序数组中的几位呢?
这里介绍一下System.arraycopy(),这是Java 中用于复制数组元素的一个本地方法。这个方法非常高效,因为它是在底层实现的,直接操作内存。思路是:先复制数组的那几位到一个新的小数组中,对这个小数组进行排序,然后再将排序后的结果放回原数组。,可以看到前两位被排序了,数组的其余部分保持不变。
2024-08-07 12:44:52
264
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人