- 博客(18)
- 收藏
- 关注
原创 集合复习JAVA
void add(int index,E element) | 在此集合中的指定位置插入指定的元素 || E remove(int index) | 删除指定索引处的元素,返回被删除的元素 || E set(int index,E element) | 修改指定索引处的元素,返回被修改的元素 || public void addLast(E e) | 将指定的元素追加到此列表的末尾 |- 用HashSet集合,基于哈希表的。
2024-06-19 11:37:04
940
原创 Stream流复习JAVA
package a57Stream流;public class StreamText3自定义对象过滤并收集 {/* 现在有两个ArrayList集合,第一个集合中:存储6名男演员的名字和年龄。第二个集合中:存储6名女演员的名字和年龄。姓名和年龄中间用逗号隔开。比如:张三,23要求完成如下的操作:1,男演员只要名字为3个字的前两人2,女演员只要姓杨的,并且不要第一个3,把过滤后的男演员姓名和女演员姓名合并到一起xssssp4,将上一步的演员信息封装成Actor对象。
2024-06-18 12:51:42
901
原创 五大排序的性能比较 java版
分别实现插入排序、选择排序、堆排序、合并排序、快速排序,以不同规模(100,1000,2000,5000,10000,100000个数据)的随机数作为测试数据集,分别设置比较操作计数器,验证各个算法随着测试数据集增加比较次数的变化趋势。
2024-06-04 11:03:22
535
2
原创 回溯算法 分割回文串
开始,尝试所有可能的子串,并检查它们是否是回文串。中,并递归地处理剩下的字符串。,它初始化递归过程,从字符串的开始位置(索引 0)调用。如果是,就将其加入到当前的分割路径。这样,下一次递归调用就会从下一个位置开始检查新的子串。的子串是否是回文串。它通过比较对称位置的字符来实现。开始,一直到字符串的末尾。,用于找到所有可能的分割方式。进行回溯,以便尝试其他可能的分割。分割成一些子串,使每个子串都是。函数,继续检查剩下的子串。函数,并返回最终的结果。中循环和递归调用的变量。所有可能的分割方案。
2024-05-29 23:48:56
373
原创 归并排序 快排优化
不断地将待排序的序列平均分割成子序列,直到每个子序列只包含一个元素。:从最小的子序列开始,两两合并,确保合并后的序列仍然有序。在归并过程中,需要额外的存储空间来存储合并后的序列。:重复归并步骤,直到最后只有一个有序的序列,这个序列就是排好序的结果。归并排序的是一种效率较高的排序算法。它不仅适用于小规模数据的排序,也能有效处理大规模数据集。此外,,即相等的元素在排序后会保持其原有的顺序。在实现归并排序时,通常采用递归或迭代两种方式。递归方式实现起来较为简洁,但需要额外的函数调用开销;
2024-05-28 00:22:36
438
原创 回溯算法 四题
这个方法使用了回溯算法,它是一种通过探索所有可能的分支来找到所有解的算法。在每一步,它都会尝试所有可能的选择,如果当前选择导致无法达到目标,它会回溯并尝试其他选择。这个方法使用了回溯算法,它是一种通过探索所有可能的分支来找到所有解的算法。在每一步,它都会尝试所有可能的选择,如果当前选择导致无法达到目标,它会回溯并尝试其他选择。这个方法使用了回溯算法,它是一种通过探索所有可能的分支来找到所有解的算法。,找出所有可能的组合,使得候选数字的和等于目标数字。如果至少一个数字的被选数量不同,则两种组合是不同的。
2024-05-27 01:00:38
739
原创 Kruskal 算法实现最小生成树
Kruskal算法的基本思想是按照边的权重顺序(从小到大)选择边,确保选择的边不会与已经选择的边形成环,直到选择了足够的边形成最小生成树。按排序后的顺序选择边,对于每条边: a. 如果这条边连接的两个顶点属于F中的不同的树,则将这条边加入到F中,并将两棵树合并为一棵树。为了保持树的平衡,我们总是将秩较小的树连接到秩较大的树上。在并查集中,每个集合用一棵树来表示,树中的每个节点都保存着一个指向其父节点的引用,根节点的父节点是它自己。当F中的树的数量达到1时,算法结束,此时F中的所有边构成了图的最小生成树。
2024-05-25 00:43:36
800
原创 贪心算法 两题
其中包含了一个静态成员函数cmp和一个成员函数merge。这个类的目的是解决区间合并问题,其中输入是一个二维向量intervals,表示一系列的区间,每个区间由起始点和结束点组成。目标是将这些区间合并成尽可能少的区间,并返回合并后的区间列表。首先,我们来看cmp函数:cmp函数是一个比较函数,用于在排序区间时确定它们的顺序。它接受两个类型的参数a和b,每个向量包含两个int值,分别表示区间的起始点和结束点。比较函数首先比较两个区间的起始点,如果相同,则比较结束点。如果a的结束点小于b。
2024-05-24 00:32:19
392
原创 贪心算法 简单三题
452.用最少的数量的箭引爆气球(贪心算法)452.用最少数量的箭引爆气球有一些球形气球贴在一堵用 XY 平面表示的墙面上。墙面上的气球记录在整数数组points,其中points[i] = [xstart, xend]表示水平直径在xstart和xend之间的气球。你不知道气球的确切 y 坐标。一支弓箭可以沿着 x 轴从不同点完全垂直地射出。在坐标x处射出一支箭,若有一个气球的直径的开始和结束坐标为xstart,xend,且满足 xstart≤ x ≤ xend,则
2024-05-23 00:32:44
1081
原创 贪心算法 四题
1005.k次取反后最大化的数组和给你一个整数数组 和一个整数 ,按以下方法修改该数组:重复这个过程恰好 次。可以多次选择同一个下标 。以这种方式修改数组后,返回数组 可能的最大和 。1.cmp静态函数静态函数只能在其被定义的文件内被访问,外部文件无法通过函数名直接调用它。cmp函数的作用:在sort排序函数中,让sort函数以绝对值大小将原数组nums进行降序排序 如果迭代到当前的nums[i]小于0,则将其*-1变为正数,k减一; 当k的数量过大时,上一步迭代无法将k消耗完
2024-05-22 00:29:10
906
原创 动态规划 2024.5.17 四题
给你一个整数n,返回和为n的完全平方数的最少数量。是一个整数,其值等于另一个整数的平方;换句话说,其值等于一个整数自乘的积。例如,149和16都是完全平方数,而3和11不是。
2024-05-17 00:10:41
944
1
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人