- 博客(86)
- 收藏
- 关注
原创 自然邻居搜索算法(NaN-Searching)
算法1,即NaN-Searching算法,是用来寻找数据集中每个点的自然邻域(Natural Neighbors,简称NaNs)的过程。自然邻域是指那些相互将对方视为邻居的数据点集合。算法1的核心思想是利用自然邻域的概念来动态地确定每个数据点的邻域大小,而不需要预设参数。
2025-03-06 21:50:18
292
原创 LOF算法
源自kimiLOF(局部离群因子,Local Outlier Factor)算法的原理是基于密度的异常检测方法,其核心思想是通过比较数据点与其邻域的密度差异来识别异常点。以下是LOF算法原理的详细阐述:LOF算法的核心在于“局部性”和“密度差异”。它认为,如果一个点的局部密度显著低于其邻域点的密度,那么这个点很可能是异常点。这种局部性使得LOF能够有效处理数据集中不同密度区域的异常检测问题,而不会被全局密度所误导。为了实现上述思想,LOF算法引入了几个关键概念:对于数据点 p ,其 k距离 是指点 p
2025-03-06 15:04:14
600
原创 KNN、RNN、NaN
在反最近邻查询中,我们寻找的是将某个对象作为其最近邻的所有其他对象。换句话说,对于一个给定的对象( q ),反最近邻查询将返回所有那些以 q 作为它们自己最近邻的对象集合。它与传统的最近邻(Nearest Neighbor,简称NN)查询相反。在最近邻查询中,我们寻找数据库中距离给定点最近的对象。两个点互为最近邻,定义式如下。
2025-03-02 13:05:32
213
原创 Python操作MySQL
安装第三方库pymysql(设置->项目内的python解释器_>+)注:查看mysql版本,同时也可作为测试是否连接成功语句。
2025-02-19 15:08:12
262
原创 文件的读取-python
用readline方法一行一行读,在使用字符串的strip方法去除每行前后的换行符,在使用split方法分割,判断那些列表元素等于“itheima”用read方法直接全部读出来,使用字符串count方法统计“itheima”出现次数。
2025-01-16 17:17:44
230
原创 银行存取业务(手续费,利息)-Java
CheckingAccount.java——重写deposit和withdraw。CheckingAccount.java——重写deposit和withdraw。
2024-08-14 08:31:38
232
原创 Java实现 零钱通 (面向过程 -> 面向对象)
SmallChangeOOP.java —— 每个功能对应一个方法。SmallChangeAPP.java —— 测试类。
2024-08-08 21:08:14
208
原创 注意考虑代码的健壮性(Double,res)
ps:此处可考虑将max函数返回类型设定为Double,因为包装类型可以为null,但是基本数据类型不可为空,此处返回值可以复制为main函数中的res来保证程序健壮性。编写类A01,定义方法max,实现求某个double数组的最大值,并返回。
2024-07-13 17:18:47
201
原创 java this的使用(比较两个对象属性是否相等)
比较两个对象属性是否相等没必要重新定义一个类,把两个对象当做参数传进去。可以使用this解决该问题。
2024-07-13 10:55:59
195
原创 递归 汉诺塔-java
大梵天创造世界的时候做了三根金刚石柱子,在一个柱子从下往上按照大小顺序摞着64片圆盘。大梵天命令婆罗门把圆盘从下面开始按大小顺序重新摆放在另一根柱子上,并且规定,在小圆盘上不能放大圆盘,在三根柱子之间一次只能异动一个圆盘。汉诺塔(又称河内塔)问题是源于印度一个古老传说的益智玩具。
2024-07-11 09:46:48
153
原创 递归 迷宫问题-java
1)findWay方法是为了找出走出迷宫的路径,找到返回true,否则返回false。5)先确定找路策略 下->右->上->左(ps:找路策略会影响找到的通关路径)4)但map[6][5]==2就说明找到通路,可以结束,否则继续找。0表示可以走 1表示障碍物 2表示可以走 3表示走过但走不通。2)(i,j)是老鼠的位置,初始化的位置为(1,1)
2024-07-10 17:27:46
264
原创 递归 猴子吃桃-java
1)规律就是 前一天的桃子 = (后一天的桃子 + 1)* 2(此处可列方程)当到第10天时,想再吃时(即还没吃),发现只有一个桃子了。2)Peach函数的参数是day,意为计算第几天的桃子个数。有一堆桃子,猴子第一天吃了其中的一半,并再多吃了一个。以后每天猴子都吃其中的一半,然后再多吃一个。问题:最初共多少个桃子。
2024-07-10 14:27:08
342
原创 java 参数传递(尤其注意参数是对象的情况)
但是要注意虽然类是引用传递,但是要注意,调用方法是新开一个栈。类和数组为 引用传递,传递的是地址。8大基本数据类型为 值传递。
2024-07-08 17:50:22
286
原创 很常用的编程思想
查找元素在数组中的位置设置索引index = -1,遍历查找把i保存到index中,break,如果循环结束后index == -1,则表示没找到
2024-07-05 09:17:03
106
原创 java顺序查找
由于是遍历查找,不能用if-else来输出没有找到,而应该设置一个索引index,如果找到就将index的值设置成下标的值,如果遍历结束后index仍为初始值,才是没有找到。
2024-07-03 17:16:09
451
原创 java数组扩容
要求:实现动态的给数组添加元素效果,实现对数组扩容。3)用户可以通过如下方法来决定是否继续添加 y/n。ps:比较字符型char是否相同只需用==即可。2)增加的元素直接放在数组的末尾。1)原始数组使用静态分配;
2024-07-03 09:59:52
171
原创 java求出一个int数组的最大值,并得到对应的下标
定义一个maxIndex,比较大小的if修改maxIndex即可。不用先用循环求出最大值,再循环用最大值比较是否相等求下标。
2024-07-02 09:42:00
235
原创 java中break和continue的标签使用
continue label是退出label对应的本次循环。ps:label并不是关键字,可以替换成其他标识符。break label是退出label对应的循环。
2024-06-29 10:57:30
326
原创 java打印菱形和空心菱形
菱形分上下两个部分。其中上部分同打印金字塔;下部分循环部分i是递减。菱形分上下两个部分。其中上部分同打印空心金字塔;(ps:菱形层数只能为奇数)下半部分同打印星号同空心菱形。(ps:菱形层数只能为奇数)
2024-06-23 15:41:32
382
原创 java打印金字塔paremid和空心金字塔
则每行打印空格数=layers-i,每行打印星号数=2*i-1。首先确定每行打印几个空格,在确定每行打印几个*设总层数为layers,当前层数为i。
2024-06-22 22:44:48
428
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人