- 博客(33)
- 收藏
- 关注
原创 入门数据结构JAVADS——如何通过遍历顺序构建二叉树
入门数据结构JAVA DS——二叉树的介绍 (构建,性质,基本操作等) (1)-CSDN博客在上一篇博客中,笔者讲过,如果告诉你遍历顺序,是可以通过算法构建出二叉树的,这篇博客就是补充,笔者想具体的阐述一下 "告诉遍历顺序从而构建二叉树" 算法.
2024-10-24 14:36:57 1156
原创 入门数据结构JAVADS —— 认识 PriorityQueue 与 大小根堆
JAVA DS 系列笔者也开了七篇了JAVA 数据结构_callJJ的博客-CSDN博客在写博客的过程中,笔者对于代码的阅读能力,调试能力,理解能力,以及写代码的能力都有增强.因此,笔者的博客也会持续更新.这篇博客我们主要介绍 优先队列.有一说一,这也是一个很好用的数据结构.博客中的所有代码都在中。
2024-10-15 14:34:50 1200 5
原创 入门数据结构JAVADS——部分常见的二叉树OJ题目(1) 持续更新
之前的博客中,笔者初步介绍了一下二叉树的性质,如何构建二叉树和二叉树的常见方法.这篇博客围绕着二叉树的常见方法,介绍一下常见的OJ题目,帮助读者们加深对于二叉树的理解.虽然本文介绍的是常见的OJ题,但其实还是介绍二叉树常见的构造,存储,遍历.只不过是把这些方法应用于实际的题目当中.
2024-10-12 10:36:40 921 3
原创 论JAVA “对象的比较“
总所周知,java对象的比较有 三种方式最简单的是可以调用equals().因为这个方法定义在Object类中,而我们的类都继承了Object类.所以我们自己定义的类都可以使用这个方法.除此以外还有两个比较接口,可以通过实现他们的某些方法比较我们的对象他们是Comparable和Comparable光这么说可能有点抽象,我们直接看代码通过这个代码我们可以看到, 我首先创建了一个Person类,接入了这里有一个问题我想提一嘴,为什么用的是包装类Integer 去比较,而不是intInteger。
2024-09-26 20:57:48 488 1
原创 论 JAVA 集合框架中 接口与类的关系
这是笔者在学习过程中的一篇"备忘录",其目的是能用最EZ最粗鄙的语言口述出 JAVA集合框架中 所有类与接口的关系本人在不断地学习中,总会混淆集合框架中的类和接口,以及它们的作用关系,虽然不影响我的使用,但是我也不想一直糊涂下去,故而趁知识还没混淆之际,赶紧写下来.这不是一篇看起来很专业的文章,但我希望它是最好懂的.
2024-09-22 16:56:10 892 1
原创 入门数据结构JAVA DS——二叉树的介绍 (构建,性质,基本操作等) (1)
说实话,笔者在之前没有系统学习过数据结构之前,看到二叉树是有点害怕的,这也是我写下博客的原因之一,笔者想要告诉大家,它没有这么可怕,只要系统的学习过,有代码底子,是可以入门的,笔者将从如何构建二叉树,二叉树的性质,常见的操作等方面为主,以介绍一部分OJ题目为辅, 希望对你们有帮助当然了,学习二叉树也需要你对于递归,搜索等算法思维有基础.本文大致分成这个几个部分1.二叉树的概念和性质2.二叉树的构建存储与遍历3.二叉树的基本操作各位读者选择自己需要的部分查看即可。
2024-09-19 17:24:03 1021 4
原创 数据结构 Java DS——分享部分链表题目 (2)
关于JAVA的链表,笔者已经写了两篇博客来介绍了,今天给笔者们带来第三篇,也是分享了一些笔者写过的,觉得挺好的题目,链接也已经挂上了,笔者们可以去看看。
2024-09-10 20:37:54 1072 5
原创 入门数据结构JAVA DS——如何实现简易的单链表(用JAVA实现)
(Linked List)是一种线性数据结构,它由一系列节点组成,每个节点包含两个部分:存储数据的部分和指向下一个节点的指针(或引用)。链表的结构使得它能够动态地增长和收缩,适合在不固定长度的序列中进行插入和删除操作。
2024-09-04 17:30:56 1033
原创 入门数据结构JAVA DS ——手搓 栈
栈作为基础的数据结构,拥有着先进后去的特点,但他的本质依旧是一个线性表,在函数管理调用和算法等方面有广泛的应用,笔者也写过一些用栈的算法题,本篇博客是介绍如何自己手搓一个栈出来,虽然前任已经替我们总结好了,我们可以直接用,但是知其然和知其所以然还是有很大区别的话不多说,开始吧。
2024-07-31 20:50:21 1161 3
原创 [Mysql] 的基础知识和sql 语句.教你速成(下)——查询的进阶 聚合查询与联合查询
这是MYsql系列博客中的第四篇这篇呢我们聚焦于一些进阶的查询sql语句的写法,由于笔者精力和内容的原因,就不再像教小孩子一样手把手的举例子了,能读到这篇博哥的读者想必也不是什么都不会的小白哥(姐)了,因此,偏向理论的会多一点。
2024-07-31 20:09:03 860
原创 简易图书管理系统——MYsql+Javase+JDBC
书接上文JDBC编程的学习——MYsql版本-CSDN博客本期我们通过对先前图书管理系统进行改造,是它的数据能保存在数据库中完整代码我已经保存在github中,能不能给个星呢!!!!这是先前的图书管理系统,这篇博客里面也有完整代码图书管理系统(java) 代码展示和思路介绍 (9000字小长文)_图书管理系统关键代码展示-CSDN博客。
2024-07-11 19:19:51 961 1
原创 JDBC编程的学习——MYsql版本
JDBC,即java数据库连接。是一种用于执行SQL语句的Java API,它是 Java中的数据库连接规范。这个API由包中的一些类和接口组成,它为Java 开发人员操作数据库提供了一个标准的API,可以为多种关系数据库提供统一访问。JDBC提供了一个统一的接口,使得Java应用程序可以与任何支持JDBC标准的关系型数据库进行交互,无需关心具体的数据库实现细节。这种平台无关性使得开发的应用程序可以轻松地在不同的数据库系统上运行。
2024-07-10 20:27:14 2551 1
原创 数据结构 Java DS——链表部分经典题目 (1)
笔者计划在暑假啃完JavaDS,Mysql的内容当然也会继续更这次给读者们分享的是链表的几个比较典型的题目,关于如何手搓一个链表,笔者还在筹划中,毕竟链表的种类也有那么多,但是在下面的题目中,只有单向链表。
2024-07-09 16:42:24 752
原创 [Mysql] 的基础知识和sql 语句.教你速成(下)——数据库的约束篇
距离上篇的更新已经快两周了,这个时候大伙都已经考完了吧!现在更新多少有点马后炮,但是没办法呀,笔者是明天考试,所以今天更新也很合理吧!!!!本来呢,读者想一口气全写完数据库的约束,聚合查询,联合查询索引,事物,Mysql 的 JDBC 编程但是呢,实在是太多了,写完起码话5-6个小时,为了让我偷懒和拥有更好的治疗,我一分为四这是第一篇,主要介绍约束.好的好的,现在开始进入正文。
2024-07-04 20:40:59 1219 1
原创 7-3 设计一个学生类
定义一个学生类Student,有姓名(name)、成绩(score)两个私有属性,提供一个无参数的构造方法、一个带参数的构造方法,以及四个公有方法getName()、setName()、getScore()、setScore ()分别用于获取和设置姓名、成绩属性。在测试类Main中,先使用学生类的无参数的构造方法创建一个学生类对象stu1,然后接收键盘上输入的数据,分别作为setName( )和setScore( )的参数,从而当作学生stu1的姓名和成绩;
2024-06-21 09:59:10 757 1
原创 [Mysql] 的基础知识和sql 语句.教你速成(上)——逻辑清晰,涵盖完整
OK,笔者知道笔者这篇博客写完的时候,很多人已经考完数据库了,但是笔者还是要写,因为笔者还没考完捏Mysql 作为一个开源的,易于安装和配置的,有着图形化工具的关系型数据库管理系统软件, 非常适合我们入门数据库,所以笔者会介绍Mysql 的基础知识和 sql 语句上篇的内容概况数据库的分类, Mysql的数据类型,基础的sql 语句包括数据库的操作,表的操作 ,基础的 CRUD管理和组织表的数据下篇的内容概况数据库的约数,聚合查询,联合查询索引,事物,Mysql 的 JDBC 编程。
2024-06-20 20:38:11 1863 4
原创 JavaDS-学习数据结构之如果从零开始手搓顺序表,顺带学习自定义异常怎么用!
笔者开始学习数据结构了,虽然笔者已经会用了,不管是C++ 中的stl亦或是Java 中的集合,为了算法比赛多少都突击过,但只知其然而不知其所以然,还是会限制发展的,因此,笔者写下这篇博客.内容是手搓一个顺序表.顺带加一点异常的使用,大伙看个乐子就好了.有错误直接私信喷我就好了,不用和我客气!说的简短一些,数据结构是计算机存储、组织数据的方式。数据结构是指相互之间存在一种或多种特定关系的数据元素的集合。
2024-05-29 17:02:47 1514 7
原创 浅谈,Java当中普通类与抽象类的区别
特性普通类抽象类实例化可以直接实例化不能直接实例化抽象方法不能包含抽象方法可以包含抽象方法方法实现所有方法都有具体实现可以有具体方法和抽象方法继承可以被继承,不要求实现方法子类必须实现所有抽象方法或为抽象类用途实现具体功能定义通用行为和属性的接口普通类用于创建具体的对象和实现具体的功能。抽象类用于定义通用的行为和属性接口,提供代码复用和强制实现机制,尤其在框架和设计模式中发挥重要作用。写在结尾。
2024-05-27 21:32:44 1023 4
原创 结合时间复杂度浅谈二分法的好处, 并分享部分二分题目(将持续更新题目,绝对值你一个收藏)
枚举查找即顺序查找,实现原理是逐个比较数组a[0:n-1]中的元素,直到找到元素x或搜索整个数组后确定x不在其中。最坏情况下需要比较N次,时间复杂度是O(n),属于线性阶算法。而二分查找是一种折半查找方法。该方法将N个元素分成大致相等的两部分,选取中间元素与查找的元素进行比较。如果相等,则查找成功;如果查找元素小于中间元素,则在左半区继续查找;如果查找元素大于中间元素,则在右半区继续查找。每次都将范围缩小至原来的一半,因此时间复杂度是O(log2n)。
2024-05-25 20:57:55 949 9
原创 java实现简单三子棋-面向对象思想编写程序(4000字中短文)
这是笔者花费一个小时(你没看错,一个小时,我也觉得长了)写的,先前学习c语言的时候写过,笔者只是把它移到了java中,加上一些面向对象思想.大体结构如图这样写好处是,结构很清晰,也便于我们后续增加功能,大家伙可以试试把笔者的缺陷补上.
2024-05-21 21:52:26 624 9
原创 关于java的深浅拷贝的说明,以及代码实例演示
AS:在 Java 中,深拷贝(Deep Copy)和浅拷贝(Shallow Copy)是对象复制的两种不同方式,它们的区别在于复制对象时是否复制对象的所有层级。这么说可能还是有点抽象,接下来笔者将通过代码演示。
2024-05-09 20:13:36 499 4
原创 数论-如何更高效的求一个数有多少个约数
在解决这个问题之前,我们有必要知道,什么是质因数质因数(素因数或质因子)在数论里是指能整除给定正整数的质数。除了1以外,两个没有其他共同质因子的正整数称为互质。因为1没有质因子,1与任何正整数(包括1本身)都是互质。正整数的因数分解可将正整数表示为一连串的质因子相乘,质因子如重复可以用指数表示。根据算术基本定理,任何正整数皆有独一无二的质因子分解式。只有一个质因子的正整数为质数。我换句话说,随便一个数字,都是由几个质因数相乘得来的,因此,只要我们知道质因数的出现个数,就能算出约数个数代码实现。
2024-05-05 21:29:43 1007 6
原创 DFS求组合型枚举
那么,如何用代码去实现呢?亲爱的朋友们,5个数中选择三个数,有多少种组合方式,请你列举出来,这个对于我们人来说很容易,比如1-5中选三个数,有如下情况那么,如何用代码去实现呢?
2024-05-02 13:36:18 608 2
原创 数论, 一篇博客带你初识快速幂,已经为什么需要快速幂
当需要计算a^b mod c时, 普通算法复杂度很明显时O(n), 一旦数据量大了,就会超时,因此,笔者向大家介绍下快速幂公式。首先用& 判断是0还是1,然后底数a,是一直要迭代的,如果指数的那位是1,就乘进去,如果不是,就继续迭代。而我们都知道,二进制转十进制有公式(这都不知道的话真的要好好学习了).例如5==101。笔者表达能力实在有限,只能写到这里了.可以的话,给个赞吧!, n>>1,表示右移一位,因为数据在计算机中是以二进制存储的.五一要放假了,笔者依旧有许多空余时间,向大家介绍快速幂算法.
2024-04-30 12:21:20 564 4
原创 常见数论模板-gcd,lcm
笔者今天闲的蛋疼,特意来分享两个常用的数论模板,gcd和lcm,不管你是否想要打算法赛,我认为你都需要学过。lcm-求最小公倍数,那就很简单了,高中学过的,知道两个数的最大公因数,就知道最小公倍数了。好的,首先介绍gcd,它的作用是求出两个数的最大公因数,而利用的数学原理是:辗转相除法。其算法过程为: 前提:设两数为a,b设其中a 做被除数,b做除数,temp为余数。笔者就分享到这里,比起更暴力的写法,这样写能在知道原理的前提下提高效率。=0则把b的值给a、temp的值给a;1、大数放a中、小数放b中;
2024-04-29 22:39:31 350
原创 填坑-bfs解决扩散.
笔者终于有空了,现在来用长草模板解决2020年的国赛题目-扩散长草模板请看本题是一道填空题,因此,只要方法简单即可,不用去管是否超时.因此,笔者想要通过套模板解决,和长草类似,通过len=q.size()存节点,bfs去解决问题只有一点需要注意它是无边界的,等于说,(0,0) 并不是边界,准确来说,他没有边界,为了防止以后坐标扩散到负数,可以让每个数加上3000(总共扩散2020次,变成3000肯定是不会越界的) 即(0,0)变成(3000,3000);
2024-04-24 16:15:10 375 1
原创 大一菜狗感悟-透过天梯赛的简单题(整数的持续性)学会平衡心态
文章如标题,就是天梯赛的l1题目,整数的持续性,诚然这题确实很简单,也没什么值得说的,但是笔者就是没写出来,因为一点小失误导致心态爆炸没写出来。dfs的模板一般都是先check,看看能不能得到结果了,有时候还会加上pd,负责剪枝(这道题笔者暂时没看到),这道题就是要你判断持续性,(乘积是否小于等于9)// 表示这个数,已经它的持续性,最小都是1,然后第三个i负责插入;// 表示这个数,它的持续性,最小都是1;判断条件了,如果小于9,就可以return了。如果值大于了,就要清空,重新存。
2024-04-21 09:42:44 604 3
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人