- 博客(93)
- 资源 (21)
- 收藏
- 关注
原创 python 抽样函数 random.choices() 和random.sample()的区别
结论:从速度上看,当抽样数量小的时候,random.sample方法比numpy.random.choice方法快很多;当抽样数量很大的时候,random.sample方法就不如numpy.random.choice方法。原文链接:https://www.jb51.net/python/288423p36.htm。
2024-02-28 10:39:47
1181
原创 JAVA终极对比Python:分析和比较处理大数据的能力
随着大数据的不断涌现,处理大数据的技术也越来越成熟。在这些技术中,Java和Python都是非常流行的选择。本文将对Java和Python在处理大数据方面的优缺点进行比较,并讨论在什么情况下应该选择哪种语言。
2024-01-13 21:28:17
2670
原创 6个机器学习可解释性框架
AI就像一个黑匣子,能自己做出决定,但是人们并不清楚其中缘由。因此,需要了解AI如何得出某个结论背后的原因,而不是仅仅接受一个在没有上下文或解释的情况下输出的结果。
2023-11-07 20:26:12
617
原创 HashMap夺命14问
只要两个元素的key计算的hash码值相同就会发生hash碰撞,jdk8之前使用链表解决哈希碰撞,jdk8之后使用链表+红黑树解决哈希碰撞。
2023-06-26 22:12:05
538
原创 HashMap、HashTable、ArrayList、定长数组之间的性能和速度比较
如果有好的散列函数,数组的每个位置就只有较少的“值”。因此,不是查询所有的list,而是快速跳到数组的某个位置,只对很少的额元素进行比较,这就是HashMap会如此之快的原因。当链表过长,则会严重影响HashMap的性能,红黑树搜索时间复杂度是O(logn),而链表是O(n)。2)将链表转换成红黑树前会判断,如果当前数组的长度小于64,那么会选择先进行数组扩容,而不是转换为红黑树,以减少搜索时间。在JDK1.7中,由”数组+链表“组成,数组是HashMap的主体,链表则是主要为了解决哈希冲突而存在的。
2023-06-26 21:56:36
2045
原创 bitSet
bitset 是一个布尔数组,但每个布尔值并不是单独存储的,而是被优化了空间,使每个布尔值只占用 1 bit 空间原理简介:Java平台的BitSet用于存放一个位序列,如果要高效的存放一个位序列,就可以使用位集(BitSet)。由于位集将位包装在字节里,所以使用位集比使用Boolean对象的List更加高效和更加节省存储空间。
2023-06-12 17:49:47
1121
原创 Java迭代器 & for循环的区别
1、iterator接口实现了三个方法;2、比较for循环和iterator迭代的效率;3、遍历ArrayList 比 遍历LinkList 更快
2022-11-27 22:18:52
5032
原创 科研小白的成长之路——博一年度总结
2020年9月,背负行囊,襟怀炽热之心,带着对未来的憧憬,我跨越大半个中国从广西老家来到哈工大,开始了科研求学之旅。时光荏苒,想想自己从博士入学时的懵懂,到现在逐渐适应“博士僧”生活,有喜有忧,有笑有泪,有苦有甜,我一路感悟颇深,收获颇多。
2022-09-04 23:29:52
1185
1
原创 Comparable比较的重写方法
对于Map中的数据,按照ULStrcture中的util + rutil 进行排序。重写compareTo方法2 自定义数据类型版重写一下compareTo() 方法由于传入的参数不同,所以也会调用不同的compareTo()方法。定义一个数据类型,可以有不同的实现 (为了配合方法的调用)...
2022-06-07 12:37:19
399
原创 JAVA 输入流 or 输出流 && 程序性能分析
1、Java Visual VMJAVA 性能分析工具https://www.cnblogs.com/linghu-java/p/5689227.html去idea 、jdk 的bin目录下面找 .exe (具体说明看链接)2、先关闭输出流 or 输入流?1)先开后关,先开的输入流,再开的输出流,通过读取输入流写入输出流中,那么应该先关输出流,再关输入流,但是一般关闭输入输出流操作都是在读写完成后的finally中执行的,所以即使先关输入流,再关输出流也不会任何问题,因为读写操作没有进行了。2
2022-04-01 23:16:14
692
原创 addAll() 和 clone 的总结
1、addAll() 和 = 赋值的区别“=”是对象地址的传递并复制java中内存的分配方式有两种,一种是在堆中分配,一种是在堆栈中分配,所有new出来的对象都是在堆中分配的,函数中参数的传递是在栈中分配的。java中有几种基本类型如int,float,double,char,byte等,他们不是对象,除此之外一切都是对象,所有的对象都是在堆上分配的。因此当创建对象或者对已经创建的对象赋值时(注意是对象,不是基本类型):Object a=new Object 和Object a=b(b是Object
2022-03-21 18:34:36
1771
原创 Queue和Stack的初始化
Queuequeue.isEmpty() :判断队列是否为空。为空返回true,不为空返回false。queue.peek(): 判断队头元素是否为空。为空返回null,不为空返回栈顶元素。queue.size():为空返回0,不为空返回一个大于1的整数。[ 判断是否为空一般用 Q != null + Q.isEmpty() ]如果保证了已经 Q = new Queue; 则直接 Q.isEmpty() //Queue<Integer> queue1 (类变量)
2022-03-19 10:10:30
1332
原创 并发修改异常 && 迭代器
一、并发修改异常对集合进行遍历时,对集合进行增、删操作,会引起并发修改异常。方案一:使用迭代器foreach底层也是使用Iterator迭代器进行迭代的 public static void main(String[] args) { ArrayList<Integer> arrayLists = new ArrayList<>(); arrayLists.add(new Integer(1)); arrayLists
2022-03-16 20:59:06
906
原创 longValue() && Long.valueOf()
longValue()longValue()是Long类的一个方法,用来得到Long类中的数值;也就是将包装类中的数据拆箱成基本数据类型。Long.valueOf(参数)Long.valueOf(参数)是将参数转换成long的包装类——Long;也就是把基本数据类型转换成包装类。为什么使用Long时,推荐多使用valueOf方法,少使用parseLong方法?因为Long本身有缓存机制,缓存了-128到127范围内的Long,valueOf方法会从缓存中去拿值,如果命中缓存,会减少资源的开销,pa
2022-03-10 17:18:21
10194
原创 Integer.MAX_VALUE
1 Java中Long和long的区别https://blog.youkuaiyun.com/qq_36833171/article/details/937342492 比较大小 long a = 2147483647; int b = Integer.MAX_VALUE; System.out.println(b); //2147483647 System.out.println(a<=b); //true a++;
2022-02-24 22:39:21
344
原创 Latex 插入过大图片或表格导致页面空白过多
当插入较长的图片或表格时,模板一般会另起一页插入这些图片或表格,导致图表前后的留白过多一、调整图片和图题的距离,或内容间隔的命令\vspace{-0.8cm} %调整图片与上文的垂直距离;\setlength{\belowdisplayskip}{3pt}和{\setlength\abovedisplayskip{0pt}分别调整图片/公式/表格与下方展示或上方展示的内容的距离调整 距离的单位为pt或cm。\setlength{\abovecaptionskip}{0.cm} %调整标题上方的
2021-11-07 18:17:17
27622
原创 Unicode character (U+2061)(inputenc) not set up for use with LaTeX
Package inputenc Error: Unicode character (U+2061)(inputenc) not set up for use with LaTeX包inputenc错误: Unicode字符(U+2061) (inputenc)未设置为与LaTeX一起使用U+2061 是 FUNCTION APPLICATION 是一个不可见的零宽度字符,用于区分串联含义函数应用程序和串联含义乘法。您应该能够简单地删除它。如果删除它很困难,则声明它什么都不做,将其添加到文
2021-10-10 17:23:36
4283
1
原创 LaTeX中引用参考文献
在LaTeX中如何引用参考文献https://zhuanlan.zhihu.com/p/2654799551、 .tex文件的根目录下,存储一个 .bib文件2、\end{document} 命令的前面,加入两行命令\bibliographystyle{plain}\bibliography{IEEEexample}命令1的作用是插入参考文献的样式,不同的杂志期刊的样式不一样,视个人情况。命令2的作用是插入ref.bib文件命令1常见的预设样式的可选项有8种,分别是:plain,按
2021-10-07 10:09:19
2599
原创 深复制和浅复制 && 数组深复制的方法
1 深复制和浅复制的方法浅复制:仅仅是指向被复制的内存地址,如果原地址发生改变,那么浅复制出来的对象也会相应的改变。浅复制下次再取的时候,可能内容已经发生了变化深复制:在计算机中开辟一块 新的内存地址 用于存放复制的对象。clone是深复制方法例子:item_table.put(can_item, temp_tab);普通的复制,是浅复制,仅复制地址;若后面对can_item进行修改,对应也会修改。比如到了下一个can_item,new 一个新的can_item,就会导致item_t
2021-07-12 20:45:32
1124
1
原创 判断两个list 或两个数组的内容是否是相同
HashMap 是内部类,不方便重写hashode() 和 equals()方法。所以,如何判断两个list中的内容是否相同呢?
2021-07-11 20:49:41
12232
1
原创 数组 & 链表 & 哈希表
数组操作数据(增加): 是将原数组的数据复制一份,再加上增加的对应位置的数据,形成一个新的数组。所以较慢。查找数据:数组是有下标的,根据下标进行查找。链表一个链表的数据单元,结构是存储着一个数据,以及下一个链表单元数据的地址。如下所示。操作数据(增加):如 a-b。在ab之间增加一个c,增加c这个单元,并修改c的“下一个链表单元的地址”为b的地址,并将a的“下一个链表单元的地址”修改为c的地址即可。查找(取出)数据,根据上一个数据,才能找到下一个数据。慢哈希表: (数组+链表)是数
2021-07-09 22:31:20
197
3
原创 JAVA 取出map的值进行修改后,不改变原来的map值
TreeMap<Integer, Integer> m1 = new TreeMap<>(); m1.put(4,0); m1.put(5,0); m1.put(6,0); m1.put(1,0); m1.put(2,0); m1.put(3,0); System.out.println(m1); TreeMap<Integer, Integer> m2 = m1; m2.remove(1); .
2021-06-29 22:11:21
3334
1
原创 Java heap space 修改内存堆栈的大小
当数据记录过大时,就会出现内存溢出的情况。java.lang.OutOfMemoryError: Java heap space如何修改内存堆的大小?setp1: Run – edit configurationsstep2: add VM options – 填入修改内存的大小一般默认是内存的1/4,若达到物理内存的80%左右,就会出现Java heap space。这时候,就扩大内存。填入以下字段-Xmx5000m表示修改的内存为 5000m比如计算机内存为16G,就是最大
2021-06-23 10:28:14
823
2
原创 JAVA 文件流输出
1 使用BufferedWriterOutputStreamWriter outPut = new OutputStreamWriter(new FileOutputStream(File,true)); FileOutputStream() 如果第二个参数为 true,则将字节写入文件末尾处,而不是写入文件开始处。(避免被覆盖)2 使用OutputStreamWriterOutputStreamWriter outPut = new OutputStreamWriter(new FileOutp
2021-06-20 22:24:04
2013
原创 重写 hashCode() 和 equals(Object obj) 方法
一般来说,判断两个项集是否相等,比较的是地址。如果要比较内容,需要重写 hashCode() 和 equals() 方法版本1fitem 和 sitem 的属性为 int 类型,是一个数,equals()方法就能直接用等号(==)判断。public class ItemPair { public int fitem; public int sitem; @Override /** @Description: 为输入值序列生成哈希码。 * 哈希代码生成时,就好像所有输入值都被放入
2021-06-17 10:35:28
151
原创 JAVA集合遍历增删 并发修改异常 java.util.ConcurrentModificationException
集合遍历增删 并发修改异常想要在循环遍历的过程中删除集合中的元素,问题描述如下// 遍历map集合(UO_table),对于不满足条件1 "支持度"的项集,直接从UO_table中删除for(ItemPair itempair : UO_table.keySet()) { if(uo_list.size() < Info.min_sup){ UO_table.remove(itempair); }}以上代码会出现并发修改异常修改1:用一个集合存储需要删除的记录,再remove()
2021-06-16 15:31:09
519
原创 2021-06-04
【优化算法】简述灰狼优化算法(GWO)原理https://blog.youkuaiyun.com/haha0332/article/details/88805910智能优化算法之海豚回声定位(Dolphin echolocation,DE)https://blog.youkuaiyun.com/hba646333407/article/details/105877753
2021-06-04 15:52:00
236
原创 修改 list 中的值
方案一: 用set()方法,找到对应的下标//方案一: 用set()方法,找到对应的下标 Stu tempStu = new Stu("djska", 0); list.set(2, tempStu);方案二: 用get()取出对应元素后,再修改Stu stu=list.get(2); stu.id = 7; stu.nameString = "66666";完整的测试代码public class exe1 { public static void main(String[]
2021-05-26 11:29:10
11220
原创 关于Map的存储顺序 && HashMap TreeMap linkedHashMap 输入输出样例
一、HashMapInput 1:Output 1:相当于一个桶的容器,输入的【5 4 3 2 1 17】分别对16取模,放入相应的位置。【1 2 3 4 5】。当遇到【17】时, 17 mod 16 = 1,【1】位置上已经有【1】,【17】相当于一个 list 被挂在【1】位置后。二、TreeMap 按key有序若用 TreeMap ,输出是按key有序的甚至treemap可以实现自定义排序按照key倒序,结果如下:三、linkedHashMap 按插入顺序得到数据link
2021-04-29 09:21:55
1278
原创 TreeMap 按value 值排序 --- 把TreeMap的EntrySet转换成list
TreeMap底层根据红黑树的数据结构构建,默认根据key的自然排序来组织(比如integer的大小,String的字典排序)。所以,TreeMap只能根据key来排序,是不能根据value来排序的(否则key来排序根本就不能形成TreeMap)。要根据value值对TreeMap进行排序,大致的思路是把TreeMap的EntrySet转换成list,然后使用Collections.sor排序一、Map的 Entry 对象1、Entry: 键值对 对象。在Map类设计是,提供了一个嵌套接口(st
2021-04-26 09:43:40
1381
转载 this关键字的三种用法和举例
一、java中this关键字的三个用法(1) this调用本类中的属性,也就是类中的成员变量;(2) this调用本类中的其他方法;(3) this调用本类中的其他构造方法,调用时要放在构造方法的首行。1、this.属性名当局部变量与全局变量同名时,总是指向局部的变量(就近原则)。若要指向全局变量,就用 this.属性名 指向成员变量。若不同名无冲突,则可以省略this。public class Teacher { private String name; priv
2021-04-21 23:20:31
5650
2
原创 局部变量 & 成员变量 & 类变量 & 实例变量
一、局部变量 & 成员变量区别:成员变量在类中,局部变量在方法中声明成员变量时可以不初始化,系统自动初始化(被final修饰且没有static的必须显式赋值),而局部变量必须手动初始化成员变量可以被public,protect,private,static等修饰符修饰,而局部变量不能被控制修饰符及static修饰;两者都可以定义成final型成员变量存储在堆,局部变量存储在栈存在时间不同二、类变量 & 实例变量 & 成员变量类变量是类中独立于方法之外的变量,用
2021-04-21 23:00:11
240
转载 浙江大学-数据挖掘课程-复习笔记
Home FrontEnd Wiki PaperReading Github Others About浙江大学-数据挖掘课程-复习笔记介绍什么是数据挖掘:抽取interesting pattern数据挖掘的过程:knowledge discovery 过程KDD可以被挖掘的patterngeneralization(概括)Information integration 信息聚合,数据仓库的构建(数据清洗、变换、聚合和多维数据模型)Data cube technology数据立方技术Mu
2021-04-14 10:48:36
857
原创 4 Guided FP-Growth algorithm for mining multitude-targeted itemsets and class association rules in
1、论文希望解决的问题:finding all frequent item-sets in large or dense datasets may be time-consuming, and a user may be interested merely in some specifific item-sets rather than all of them.2、作者的目标:quickly mine a given set of itemsets using a small amount of m
2021-04-04 15:43:09
154
C++实战:多边形有效边表填充算法深度解析与代码实现
2024-12-21
数学建模宝典:30个通用模型精讲与应用指南(学习文档)
2024-12-21
校园导游-数据结构课程设计(附源代码)
2021-12-13
数学建模的29个通用模型.rar
2021-09-05
电子密码锁-EDA课程设计- 源代码+课程报告.rar
2021-06-29
基于QT的井字棋AI实现(完整包).rar
2021-06-03
IO地址分配表(AT技术标准)
2021-05-29
基于声卡的信号发生器 LabVIEW语音采集及声卡设置
2021-05-01
课程设计:基于声卡的信号发生器(语音设备Labview 双声道声卡设置与采集系统)
2021-05-01
人工智能原理 PPT上课用 逻辑推理.rar
2021-04-29
课程实验:声卡的虚拟信号发生器和频谱分析.rar
2021-04-27
快速排序-算法报告.doc
2021-04-14
鸢尾花数据集 iris.csv
2021-04-14
电磁场实验:电磁波行进&电磁分布的matlab仿真(.m文件源码)
2021-04-14
SPMF数据库的资料包
2021-03-29
计算机网络通讯与保密技术--国密算法SM1-SM3算法及传统密码比较分析
2021-01-19
java jxl的jar包 官方下载版
2020-09-26
IDEA 清除缓存是否等效于重启机器
2023-07-10
TA创建的收藏夹 TA关注的收藏夹
TA关注的人