![](https://img-blog.csdnimg.cn/20201014180756913.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
Java语法
文章平均质量分 78
小锦鲤yaw
天将降大任于斯人也,必先苦其心志,劳其筋骨,饿其体肤,空乏其身,行拂乱其所为,所以动心忍性,曾益其所不能
展开
-
topK问题---使用优先级队列解决
Top K是很常见的一种问题,是指在N个数的无序序列中找出最大的K个数,而其中的N往往都是海量数据,对于这种问题,原创 2023-09-04 00:07:24 · 284 阅读 · 0 评论 -
Java反射机制的详细讲解
对于任意一个对象,都能够调用它的任意方法和属性,既然能拿到那么,我们就可以修改部分类型信息。对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法。getField(String name) :获得某个公有的属性对象。在反射之前,我们需要做的第一步就是先拿到当前需要反射的类的。getMethods() :获得该类所有公有的方法。getFields() :获得所有公有的属性对象。对象的核心方法,达到反射的目的,即:在运行。状态中,对于任意一个类,都能够知道这个类的。原创 2023-07-31 21:17:52 · 365 阅读 · 6 评论 -
【数据库】Java如何连接数据库JDBC(代码详解)
JDBC是一套接口(面向接口写实现类,能够解耦合,提高代码的扩展力)因为每个数据库底层的实现原理是不同的,如果没有接口 访问不同数据库就要不同的代码原创 2023-04-26 10:20:04 · 3260 阅读 · 3 评论 -
【数据结构】哈希表详解以及代码实现
哈希表来源于数组的随机访问特性当我们需要查找某个指定元素时,用链表存储:从链表头遍历到链表尾部,时间复杂度为O(n)用平衡搜索树存储:时间复杂度为O(logn)用数组存储,如果知道了元素的索引,那么查找元素的时间复杂度就是O(1)原创 2023-04-12 15:04:05 · 1209 阅读 · 0 评论 -
【数据结构】七大排序算法详解Java
插入排序在数组内元素近乎有序的时候性能极好。数组中有大量重复元素。原创 2023-04-12 15:00:00 · 636 阅读 · 1 评论 -
【数据结构】二叉搜索树BST的实现(递归)
二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树:若它的左子树不为空,则左子树上所有节点的值都小于根节点的值若它的右子树不为空,则右子树上所有节点的值都大于根节点的值它的左右子树也分别为二叉搜索树原创 2023-04-05 17:00:00 · 735 阅读 · 2 评论 -
【数据结构】二叉搜索树的Java代码实现
二叉搜索树又称二叉排序树,它或者是一棵空树,或者是具有以下性质的二叉树:若它的左子树不为空,则左子树上所有节点的值都小于根节点的值若它的右子树不为空,则右子树上所有节点的值都大于根节点的值它的左右子树也分别为二叉搜索树原创 2023-04-03 17:21:52 · 351 阅读 · 4 评论 -
【数据结构】实现优先级队列
之前我们所学的队列(Queue),队列是一种先进先出的数据类型(First in First out)但是优先级队列虽然名叫队列,却不满足先进先出的条件,更像是数据类型中的堆,优先级队列每次出队的元素都是优先级最高的元素,(优先级的高低需要自己进行定义),比如按照大小定义优先级的高低,那么每次出队的元素都是队列中最大的元素那么我们就可以用堆来实现优先级队列每次将根节点元素弹出,并重新维护堆原创 2023-04-02 16:18:13 · 564 阅读 · 3 评论 -
Comparator接口与Comparable接口的区别
它们都是Java的一个接口,是用来对自定义的对象进行比较的接口什么是自定义的对象?比如我们自定义一个学生类:public class Suedent { String name; Double score;}当我们创建一个存放学生对象的线性表原创 2023-04-01 20:45:00 · 341 阅读 · 4 评论 -
【七大排序】原地堆排序的实现(Java图解)
我们可以运用堆这个算法对数组进行排序的实现,比如创建一个新的堆,利用堆的add()遍历数组将元素加入堆中,但是这样会增加O(n)的辅助空间,那么有没有一种办法,利用堆使用O(1)的空间就实现数组排序呢?答案当然是有的,就是我们接下来讲的原地堆排序原创 2023-03-31 14:06:31 · 207 阅读 · 5 评论 -
【数据结构】堆,堆的建立,插入以及删除(以大堆为例)
1.堆的性质:2.堆的存储方式 2.1大堆和小堆存储示意图3.堆的创建(以大堆为例)1.创建一个线性表用来存放数据2.堆的插入图解:3.堆的删除图解: 2.堆的插入1.先将元素插入到堆的末尾,即最后一个孩子之后2.插入之后如果堆的性质遭到破坏,将新插入的节点顺着双亲往上调整到合适的位置即可 3.堆的删除堆的删除一定删除的是堆顶元素,具体如下: 1.将对顶元素与最后一个元素交换 2.将堆中有效元素个数减少一个 3.对堆顶元素向下调整原创 2023-03-29 18:41:00 · 1492 阅读 · 4 评论 -
【数据结构】二叉树的遍历以及基本操作
完全二叉树是效率很高的数据结构,完全二叉树是由满二叉树而引出来的。有一个特殊的结点,称为根结点,根结点没有前驱结点。:若一个结点含有子结点,则这个结点称为其子结点的父结点;二叉树的子树有左右之分,次序不能颠倒,因此二叉树是有序树。n 个结点的二叉树,当且仅当其每一个结点都与深度为K。:一个结点含有的子树的根结点称为该结点的子结点;每棵子树的根结点有且只有一个前驱,可以有。的结点一一对应时称之为完全二叉树。1.手动快速创建一棵简单的二叉树。:从根开始定义起,根为第。:树中结点的最大层次;原创 2023-03-25 12:23:00 · 804 阅读 · 2 评论 -
【数据结构】队列的模拟实现
只允许在一端进行插入数据操作,在另一端进行删除数据操作的特殊线性表,队列具有先进先出FIFO(First In First Out) 入队列:进行插入操作的一端称为。注意:Queue是个接口,在实例化时必须实例化LinkedList的对象,因为LinkedList实现了Queue接口。)是指允许两端都可以进行入队和出队操作的队列,出队列:进行删除操作的一端称为。1.环形队列通常使用数组实现。原创 2023-03-24 08:26:38 · 470 阅读 · 2 评论 -
双向链表的实现
双向链表的实现原创 2023-03-20 14:04:54 · 62 阅读 · 0 评论 -
接口,内部类,泛型Java
接口,内部类,泛型Java原创 2023-03-09 23:09:17 · 43 阅读 · 0 评论 -
Java异常
异常原创 2023-03-04 11:41:27 · 65 阅读 · 0 评论 -
Java接口及字符串常用方法
Java字符串方法原创 2023-02-20 12:16:22 · 793 阅读 · 0 评论 -
Java递归
递归练习原创 2023-02-07 21:12:05 · 116 阅读 · 2 评论 -
Java---封装,继承,多态,接口
Java---封装,继承,多态,接口原创 2023-02-21 21:40:08 · 235 阅读 · 0 评论 -
Java类与对象与方法
Java类与对象与方法原创 2023-02-19 23:05:56 · 448 阅读 · 0 评论 -
java---输入输出
java---输入输出原创 2023-01-12 19:09:20 · 191 阅读 · 0 评论 -
java---数据类型运算符总结
java---数据类型运算符总结原创 2023-01-10 20:07:02 · 177 阅读 · 0 评论