- 博客(18)
- 收藏
- 关注
原创 使用阿里镜像引入Spring6依赖时出错
原来,不光要在<dependencies>中引入spring6,还要在<repositories>中配置。今天通过maven导入Spring6的包,可是一直爆红。
2024-11-03 10:54:17
167
1
原创 Java数据结构——图:最小生成树(普利姆算法Prim)
先介绍一下最小生成树(Minimum Cost Spanning Tree),简称 MST。给定一个带权的无向连通图,如何选取一棵生成树,使树上所有边上权的总和为最小,这叫最小生成树。普利姆(Prim)算法求最小生成树,也就是在包含 n 个顶点的连通图中,找出只有(n-1)条边包含所有 n 个顶点的连通子图,也就是所谓的极小连通子图。
2024-07-06 18:34:43
544
原创 Java数据结构——图:最小生成树(克鲁斯卡尔算法Kruskal)
上一步操作之后,边的权值最小,但会和已有的边构成回路;将边加入到最小生成树结果 R 中。上一步操作之后,边的权值最小,但会和已有的边构成回路;上一步操作之后,边的权值最小,因此将它加入到最小生成树结果 R 中。上一步操作之后,边的权值最小,因此将它加入到最小生成树结果 R 中。上一步操作之后,边的权值最小,因此将它加入到最小生成树结果 R 中。边的权值最小,因此将它加入到最小生成树结果 R 中。
2024-07-06 18:27:39
1839
原创 Java数据结构——树:二叉树、顺序存储二叉树、线索化二叉树、堆排序、哈夫曼树、二叉排序树、平衡二叉树
堆排序可能是所有常见的排序中最难的一个,根据尚硅谷-韩顺平老师的讲解,对整套流程一直搞不懂,研究了一个晚上 思路理清了不少。本文按照韩顺平的代码,谈一谈整个堆排序的思路。堆排序是先把一个数组构建成一颗二叉树,这颗二叉树要求所有的非叶子节点都要比他的两个孩子节点大。所以,如果把一个数组构建成大顶堆的二叉树,那么根节点一定是这个数组中最大的值。// 为什么根节点是最大的呢?拿数组 {4,6,8,5,9,13,15,7,3} 举例。这个数组在未经过任何调整的情况下应该是如下图所示:从下到上、从左到右。
2024-07-05 18:31:01
708
原创 Java数据结构——普通队列+环形队列
学习韩顺平老师讲的环形队列,有一个问题:由于isFull () 函数是rear+1,总会浪费一个存储单元。下面写了韩顺平老师的讲的方法,也有我自己的升级版(不会浪费存储单元)。队列的输入输出存在前后端,遵从先入先出的原则–>因此需要两个变量front及rear分别记录队列的前后端(front会随数据输出而改变;front永远在红色的格子下最近的灰色格子上;rear<=maxSize-1,当rear==maxSize-1【满】指针往后移动:rear+1,当front==rear【空】
2024-07-03 10:14:50
217
原创 Java数据结构——栈的初始化、判断栈空/满、进栈、出栈、获取栈顶元素、打印栈
【代码】Java数据结构——栈的初始化、判断栈空/满、进栈、出栈、获取栈顶元素、打印栈。
2024-07-02 19:11:50
204
原创 Java数据结构——单链表的初始化,建立,求表长,查找(按值查找、按序号查找),插入,删除,输出
【代码】Java数据结构——单链表的初始化,建立,求表长,查找(按值查找、按序号查找),插入,删除,输出。
2024-07-02 17:59:00
666
原创 Java 数据结构 —— 冒泡、选择、插入、希尔、快速、归并排序
排序过程中每次从无序表中取出第一个元素,把它的排序码依次与有序表元素的排序码进行比较,将它插入有序表中的适当位置,使之成为新的有序表。第 i 次:求出arr[i-1]~arr[n-1]中的最小值,然后将arr[i-1]与最小值进行切换;第n-1次:求出arr[n-2]~arr[n-1]中的最小值,然后将arr[-2]与最小值进行切换;第二次:求出arr[1]~arr[n-1]中的最小值,然后将arr[1]与最小值进行切换;冒泡排序就是从第一个元素开始,如果第一个元素比第二个元素大,交换第一个和第二个元素。
2024-06-30 19:19:04
450
原创 Java JDK环境调试,版本不匹配,提示Error: A JNI error has occurred, please check your installation and try again
参考:【JDK不同版本相互切换】https://www.bilibili.com/video/BV1GF411C7jB?vd_source=6fab38477fb17332a4653ae6511463a8(讲的很详细!在网上差了很久,该试的方法都试了,查看了版本号也一致,已知不知道问题出在哪里。之前安装的一直都是jdk 8,应该安装jdk17。今天cmd运行jar文件的时候,一直报错。往下一看,好像是jdk版本的问题。于是又到网上找怎么切换jdk版本。试了各种方法,终于搞好了。
2024-06-25 18:08:52
330
原创 笔记 | Java 数据结构——平衡二叉树(AVLTree)左旋转、右旋转、双旋转
如果一颗二叉排序树的左子树的高度明显大于右子树的高度,或者反过来,这对查询速度右很大的影响(插入速度无影响)。所以要对二叉排序树在插入的时候 当左子树的高度和右子树的高度相差大于1的时候进行旋转。
2024-06-16 17:58:40
1540
原创 笔记 | Java 数据结构——二叉排序树(BST)添加节点
/循环添加节点i++){//中序遍历二叉树System.out.println("中序遍历二叉树~");//添加节点root=node;}else{//中序遍历if(root!=null){}else {System.out.println("二叉排序树为空,不能遍历");//构建节点int value;Node left;Node right;//构造方法//添加节点//如果要添加的这个节点是空的话,直接退出return;
2024-06-10 16:38:42
204
原创 笔记 | Java 数据结构——归并排序
当没有给出merge()的时候,就是在不断地拆分,如果此时输出数组,还是【8,4,5,7,1,3,6,2】· 当给出了merge()的时候,首先把这个数组拆分成了【8,4 5,7,1,3,6,2】(意思就是只是把8,4拆分了,剩下的部分并没有拆分)这里需要注意一下,拆的时候我们想象成拆到8 4 5 7 1 3 6 2,但实际上真的如此吗?其实拆到8,4 5,7 1,3 6,2的时候,已经可以开始对8,4进行排序了(此时left=0,right=1,mid=0)
2024-04-14 15:27:10
307
2
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人