自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

隔壁皮皮王的博客

一点点累积

  • 博客(31)
  • 资源 (2)
  • 收藏
  • 关注

原创 JAVA 实现发送邮件功能——邮箱验证码

JAVA 实现发送邮件功能——邮箱验证码在学习 Java 的过程中,由于项目需要使用邮箱验证码功能,所以进行了较为深入的学习,在这里写一下这个功能的实现方式。首先想要使用 Java 实现发送邮件的功能就需要先去对应的邮箱开启 POP3/IMAP 或者 SMTP/IMAP 服务。这里使用163邮箱来举例,附上163邮箱的POP3/SMTP/IMAP服务介绍进入邮箱后点击设置,找到并点击 POP3/SMTP/IMAP点开后开启 POP3/IMAP服务 或者 SMTP/IMAP服务 ,这里我全部开启

2021-09-14 17:05:12 11154 2

原创 和数据库有关面试题(持续更新……)

这里收集着我自己见到的数据库类面试题,肯定不全,解释也不是最优的。但在慢慢更新,也是我存放这类面试题的一个小仓库数据库有关的面试题数据库类面试题数据库的三范式是什么?Mysql数据库中char和varchar的区别是什么?Mysql的内连接、左连接、右连接有什么区别?什么是事务?JDBC类面试题JDBC访问数据库的基本步骤是什么?JDBC的execute,executeQuery,executeUpdate的区别是什么?数据库连接池类面试题数据库连接池是什么?为什么要使用数据库连接池?数据库类面试题数

2021-08-27 22:35:07 1901

原创 算法练习——0-1背包问题(回溯法)

0-1背包问题(回溯法)目录0-1背包问题(回溯法)题目:示例:分析:回溯法(探索与回溯法)题目解析:代码:题目:给定n个重量为w1,w2,w3,…,wn,价值为v1,v2,v3,…,vn的物品和容量为C的背包求这个物品中一个最有价值的子集,使得在满足背包的容量的前提下,包内的总价值最大注意:0-1背包问题指的是每个物品只能使用一次示例:示例:输入: int[] weight = {2,5,3,4}; int[] value = {10,7,4,6}; int c = 10

2021-08-23 01:04:08 3146

原创 最大子数组和(连续子数组的最大和)—— 提高篇

最大子数组和此题解法仅为为个人理解,如有其他思路或解法欢迎来探讨!基础篇链接:最大子数组和(连续子数组的最大和)—— 基础篇目录最大子数组和题目:示例:分析:代码:题目:已知一个整数数组 arr,找到子数组的最大和(子数组最少包含一个元素)并返回这个子数组。子数组元素顺序不发生改变且需连续。示例:输入: arr = [-2,1,-3,4,-1,2,1,-5,4]输出: sum = 6 ,nums = [4,-1,2,1] 分析:这道题打眼一看就是一道考察动态规划的题(当

2021-08-15 21:52:55 2003

原创 最大子数组和(连续子数组的最大和)—— 基础篇

最大子数组和(动态规划、分治法):此题解法仅为为个人理解,如有其他思路或解法欢迎来探讨!力扣链接:连续子数组的最大和目录最大子数组和(动态规划、分治法):题目:示例:分析:代码:动态规划:分治法(具体讲解提高篇有):我自己的另一种写法:题目:输入一个整型数组,数组中的一个或连续多个整数组成一个子数组。求所有子数组的和的最大值。示例:输入: nums = [-2,1,-3,4,-1,2,1,-5,4]输出: 6解释: 连续子数组 [4,-1,2,1] 的和最大,为 6。分析:

2021-08-11 20:01:15 5029 2

原创 算法练习——实现二叉树前序、中序和后序遍历

实现二叉树前序、中序和后序遍历:目录实现二叉树前序、中序和后序遍历:题目:示例:分析:代码:题目:实现二叉树前序、中序和后序遍历提示:使用递归实现示例:示例:输入:/* 1 2 3 4 5 6*/前序输出:1 2 4 3 5 6中序输出:4 2 1 5 3 6后序输出:4 2 5 6 3 1分析:这道题其实不完全算是算法,其实就是二叉树的三种遍历方法:前序遍历:若二叉树为空,则空操作返回,否则先访问根结点,然后前序遍历左子树,再

2021-08-08 20:25:35 312

原创 在练习了十七道算法题后的一些小结

算法小结 从被要求每天做一道算法题以来,已经做了十七道不同难度的算法题了,涉及到树、链表、栈 等数据结构的知识,也使用过动态规划、递归算法、贪心算法等常用解题思路。在做过了这些题后,也发现了自己的不足与知识的欠缺,同时也总结下来了一些小小的解题思路,在这里记录一下:快速导航目录算法小结认清自己的实力优先分析题目分析简化操作与排错打好数据结构的基础多找点经典算法题来做认清自己的实力这点非常重要!!“Rome was not built in a day” 谁都是从菜鸟一步一步过来的,不要急于求

2021-08-06 21:50:09 159

原创 算法练习 —— Z-字型变换

Z-字型变换:此题解法仅为为个人理解,如有其他思路或解法欢迎来探讨!力扣链接:Z 字形变换目录Z-字型变换:题目:示例:分析:代码:题目:将一个给定字符串s根据给定的行数numRows,以从上往下、从左到右进行 Z 字形排列 。比如输入字符串为"PAYPALISHIRING" 行数为3时,排列如下:P A H NA P L S I I GY I R之后,你的输出需要从左往右逐行读取,产生出一个新的字符串,比如:"PAHNAPLSIIGYIR"。请你实现这个将

2021-07-25 18:36:07 270

原创 图书馆管理系统(数据库版)

图书馆管理系统(数据库版)由于之前那次的图书馆管理系统是只使用了I/O进行数据的交互,所以在学习完数据库与JDBC后便开始了对图书馆管理系统的重构,完成了这版利用MySQL数据库存储数据的图书馆管理系统。文章目录图书馆管理系统(数据库版)项目框架项目分包数据库表自我认为好用的一些方法手机号码判断int输入类型判断书籍ID限定项目框架具体要求与上次的项目一样,这次只是利用所学的数据库知识和三层架构来构建项目。项目分包符合三层架构思想,利用SSM框架,分为dao(数据访问层)、enti

2021-07-08 15:59:26 3044

原创 git 把某个分支的文件合并到另一个分支

git 把某个分支的文件合并到另一个分支由于本人萌新一枚!最近又经常使用码云,所以在这里记录一下所遇到的问题之一——如何把某个分支的文件合并到另一个分支:切换到目标分支这里从master分支切换到自己的分支在命令行输入命令输入命令:git checkout --patch 来源分支名称 文件路径(比如/app/view/activity.java)比如,我要把master分支的/app/view/activity.java拉到v1分支:当前要在v1分支上,输入:git chec

2021-07-02 15:26:43 1163

原创 数据结构的高级排序算法——希尔排序算法

高级排序希尔排序希尔排序是插入排序的一种,又称“缩小增量排序”,是插入排序算法的一种更高效的改进版本。需求:​ 排序前:{9,1,2,5,7,4,8,6,3,5}排序原理:选定一个增长量h,按照增长量h作为数据分组的依据,对数据进行分组。对分好组的每一组数据完成插入排序。减小增长量,最小减为1,重复第二步操作。图解:动图:由于希尔排序的设定,我们需要先确定增长量h:增长量h的值每一固定的规则,我们这里采用以下规则:int h=1;while(h<数组的长度/2){

2021-06-28 09:43:43 281 1

原创 排序算法基础——Comparable接口

Comparable接口java提供了一个Comparable接口用来定义比较规则,可实现对象间的比较。Comparable接口可以让实体类的两个实例依据类中某一字段的值进行比较或者排序。需求:对两个Student类对象的年龄age进行比较,获取年龄较大的Student对象。1.定义一个学生类Student,具有年龄age和姓名username两个属性,并通过Comparable接口提供比较规则:public class Student implements Comparable<Stud

2021-06-06 13:23:22 389 3

原创 排序算法时间复杂度测试——事后估算法

事后估算法reverse_arr.txt文本文件中存有10000~1的逆序数列,对于排序算法来说,逆序的数组是最复杂的,这里可用来测试算法的执行效率。这个文本文件可以使用IO流循环输出得到这个文件,大概例子之前IO部分有写到,这里就不再赘述。事后估算法的主要逻辑就是让算法执行预定好的逆序数组,在算法开始之前读取现在的系统时间,在算法执行结束后再次读取系统时间并求差值,便得到了算法执行所需要的时间。注:由于每个人电脑硬件的不同与系统执行效率的不同,所以导致相同算法在不同电脑上的运行速度是不一样的,但

2021-05-30 15:09:18 706 1

原创 MySQL学习笔记——尚硅谷李玉婷经典版MySQL基础笔记(一)

MySQL学习笔记——尚硅谷李玉婷经典版MySQL基础笔记(一)MySQL学习笔记目录MySQL学习笔记——尚硅谷李玉婷经典版MySQL基础笔记(一)一、基础知识1.MySQL的语法规范2.SQL的语言分类3.登录和退出MySQL服务器4.基本语法5.建表约束6.数据库的三大设计范式二、如何使用可视化工具操作数据库?进阶一:基础查询一、查询常量二、查询表达式三、查询单个字段四、查询多个字段五、查询所有字段六、 查询函数(调用函数,获取返回值)七、起别名方式一:使用AS关键字方式二:使用空格八、需求:查询f

2021-05-21 19:58:16 1336 2

原创 数据库建表约束——五大约束

建表约束语法:CREATE TABLE 表名 ( 字段名 字段类型 列级约束, 字段名 字段类型, 表级约束)添加约束的时机:创建表时修改表时约束的添加分类:列级约束:​ 六大约束语法上都支持,但外键约束没有效果表级约束:​ 除了非空、默认,其他的都支持主键约束PRIMARY KEY用于保证该字段的值具有唯一性,并且非空eg:学号、员工编号#主键约束#使某个字段不重复且不得为空,确保表内所有数据的唯一性。CREATE TABLE us

2021-05-21 16:08:23 3782 5

原创 数据结构的简单排序算法——插入排序算法

简单排序插入排序插入排序(Insertion sort)是一种简单直观且稳定的排序算法。需求:​将数组排序​排序前:{9,7,8,2,5,1,3,6,4}排序原理:把所有的元索分为两组,已经排序的和未排序的。找到未排序的组中的第一个元索,向已经排序的组中进行插入。倒叙遍历已经排序的元素,依次和待插入的元索进行比较,直到找到一个元索小于等于待插入元索,那么就把待插入元索放到这个位置,其他的元素向后移动一位。插入排序API设计:类名Insertion构造方法In

2021-05-21 09:41:34 263 4

原创 数据结构的简单排序算法——选择排序算法

简单排序选择排序选择排序是一种更加简单直观的排序方法。需求:​ 将数组排序​ 排序前:{9,5,6,8,2,7,3,4,1}排序原理:每一次遍历的过程中,都假定第一个索引处的元素是最小(大)值,和其他索引处的值依次进行比较,如果当前索引处的值大(小)于其他某个索引处的值,则假定其他某个索引出的值为最小(大)值,最后可以找到最小(大)值所在的索引。交换第一个(最后一个)索引处和最小(大)值所在的索引处的值。选择排序API设计:类名Selection构造方法

2021-05-21 09:14:08 292 2

原创 三大范式的通俗解释

三大范式的通俗解释目前关系数据库有六种范式:第一范式(1NF)、第二范式(2NF)、第三范式(3NF)、巴斯-科德范式(BCNF)、第四范式(4NF)和第五范式(5NF,又称完美范式)。其中最常使用的是第一范式(1NF)、第二范式(2NF)、第三范式(3NF),也就是所谓的三大范式第一范式第一范式(1NF):要求数据库表的每一列都是不可分割的原子数据项。1NF是对属性的**原子性**,要求属性具有原子性,不可再分解举例说明:部门姓名家庭信息001-前端张三江苏-未婚

2021-05-20 16:48:11 13412 2

原创 数据结构的简单排序算法——冒泡排序算法

简单排序冒泡排序冒泡排序(Bubble Sort),是一种计算机科学领域的较为简单的排序算法。需求:将数组排序​ 排序前:{9,5,6,8,2,7,3,4,1}排序原理:比较相邻元素。如果前一个元素比后一个元素大,就交换这两个元素的位置。对每一对相邻元素做同样的工作,从第一对元素到结尾的最后一对元素。最终最后位置的元素就是最大值。冒泡排序API设计:类名Bubble构造方法Bubble():创建Bubble对象成员方法1. public static

2021-05-17 09:59:03 425 2

原创 数据结构——概论总结

数据结构+算法=程序这句是著名的瑞士计算机科学家沃思(N.Wirth)教授提出的,它解释了程序的本质。这里数据结构是指数据的逻辑结构与存储结构,而算法则是对数据运算的描述。由此可见,程序设计的本质就是针对问题选择一种合适的数据结构与一种好的算法。1 常用术语在学习之前,我们要先了解与数据结构有关的常用术语:数据(data)是描述客观事物的数、字符以及能输入计算机中并被计算机处理的符号的集合。例如,一个代数方程的求解程序中所使用的数据是整数和实数,而一个文本编辑程序使用的数据是字符串。随着计算机的发展

2021-05-10 15:35:10 421 1

原创 JAVA I/O小结(五)——字符流输入输出

JAVA I/O小结(五)——字符流输入输出看此篇博文前推荐看看这篇几篇,有助于了解File类的各种方法和字节流操作与算法传送门:JAVA I/O小结(一)——File类JAVA I/O小结(二)——File类的递归遍历JAVA I/O小结(三)——字节流输入输出JAVA I/O小结(四)——字节流方式实现复制操作I/O的分类根据数据的流向区分:输入流 和 输出流根据数据的类型区分:字节流(8bit) 和 字符流(16bit)由此可得出如下表格: 字节流字符流

2021-04-30 15:50:22 163 2

原创 JAVA I/O小结(四)——字节流方式实现复制操作

JAVA I/O小结(四)——字节流方式实现复制操作看此篇博文前推荐看看这篇几篇,有助于了解File类的各种方法和字节流操作传送门:JAVA I/O小结(一)——File类JAVA I/O小结(二)——File类的递归遍历JAVA I/O小结(三)——字节流输入输出其实字节流方式实现复制操作就是将字节流的输入输出方式套在一起,将A文件的数据用输入流读进内存,再从内存中将数据输出给B文件,这里指需要注意在字节输出流时,要将输出模式改为不覆盖数据 之前文件夹中数据:test123.txt

2021-04-25 10:17:16 172 3

原创 Java项目实战-基于I/O流设计的图书馆管理系统项目总结

Java项目实战-基于I/O流设计的图书馆管理系统项目总结由于目前学习进度的原因,我还未开始学习数据库等知识,所以为了完成项目要求,这次就使用I/O流的知识来进行存储,将书籍信息,用户信息和日志都保存到各自的文件中,再进行增删改查的操作图书馆管理系统Java项目实战-基于I/O流设计的图书馆管理系统项目总结项目描述:项目重点知识功能概述详细代码:Test类User类Books类Library类InException类UserInterface类BackstageInterface类AllBook类Fi

2021-04-20 23:41:03 492 5

原创 JAVA I/O小结(三)——字节流输入输出

JAVA I/O小结(三)——字节流输入输出看此篇博文前推荐看看这篇几篇,有助于了解File类的各种方法和递归遍历方式传送门:JAVA I/O小结(一)——File类JAVA I/O小结(二)——File类的递归遍历I/O的分类根据数据的流向区分:输入流 和 输出流根据数据的类型区分:字节流(8bit) 和 字符流(16bit)由此可得出如下表格: 字节流字符流输入流InputStreamReader输出流OutputStreamWrite

2021-04-18 21:34:53 1703 7

原创 JAVA I/O小结(二)——File类的递归遍历

JAVA I/O小结(二)——File类的递归遍历看此篇博文前推荐看看这篇,有助于了解File类中的各种方法传送门:JAVA I/O小结(一)——File类遍历路径指定目录下全部的文件和目录这里使用递归的方法遍历整个目录代码如下:public void recursion(File file) { if (file.isFile()) {//判断是否为文件 System.out.println(file.getAbsolutePath

2021-04-11 19:16:14 152 5

原创 JAVA I/O小结(一)——File类

JAVA I/O小结(一)——File类什么是I/O流?答:对任何程序设计语言来说,输入输出(Input/Output)系统都是非常核心的功能。输入(Input):就是将外部的数据读取到程序当中(以程序为基准,核心含义是“读”);如读取硬盘的文件到程序;读取网络上某个位置内容到程序;读取数据库系统的数据到程序;读取某些硬件系统到程序。输出(Output):在处理数据时,需要将数据写到外部(以程序为基准,核心含义是“写”);如将数据写到硬盘中;将数据写到数据库系统中;将数据写到某些硬件系统中。

2021-04-11 16:39:29 218 7

原创 2021.03.29 周总结

讲真,这周学的不是特别好,感觉自己什么都看了点,也什么都没看,用起来也不能得心应手,不通透。之后也会在自己好好的看一遍,好好敲一遍代码,写写经验总结。static与final关键字static关键字用来修饰类方法和类变量。写变量里是静态变量,写方法里是静态方法,写代码块里是静态代码块(废话)。static修饰的东西总在创建对象前执行,静态方法不可以调用非静态属性及方法(这不还没有创建哪儿有的用啊)。final关键字可以用来修饰引用(变量)、方法和类。实例变量必须要显示初始化,之后无法被修改,常与sta

2021-03-29 10:30:18 123 9

原创 什么是多态,JAVA 中多态的实现机制

什么是多态,JAVA 中多态方法必须要被所在类或对象调用才有意义若方法含有参数:形参:方法声明时的参数。实参:方法调用时实际传给形参的参数值。 JAVA里将实参数值传入方法的传递机制只有 值传递在值传递中,传入的都只是实际参数的副本(复制品),不是将本身传入这里要先知道,基本数据类型在栈里存放的是数据,引用数据类型在栈里存放的是地址,地址指向堆中开辟的一个空间,空间中存放的才是数据。所以这里可知:形参为基本数据类型时传入的是数据值形参为引用数据类型时传入的是地址值实例代

2021-03-22 18:55:37 1928 5

原创 JAVA中方法参数的值传递机制

方法必须要被所在类或对象调用才有意义若方法含有参数:形参:方法声明时的参数。实参:方法调用时实际传给形参的参数值。 JAVA里将实参数值传入方法的传递机制只有 值传递在值传递中,传入的都只是实际参数的副本(复制品),不是将本身传入这里要先知道,基本数据类型在栈里存放的是数据,引用数据类型在栈里存放的是地址,地址指向堆中开辟的一个空间,空间中存放的才是数据。所以这里可知:形参为基本数据类型时传入的是数据值形参为引用数据类型时传入的是地址值实例代码如下: //基本数.

2021-03-19 22:29:45 170 7

原创 2021.03.17 pokémon小游戏开发记录与周总结

提示:这里可以添加系列文章的所有文章的目录,目录需要自己手动添加例如:第一章 Python 机器学习入门之pandas的使用提示:写完文章后,目录可以自动生成,如何生成可参考右边的帮助文档文章目录前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas

2021-03-18 23:06:08 345 6

原创 遇见未来的自己

遇见未来的自己初来乍到请多关照这是我在这里写下的第一篇片博客,不善言辞的我也写不出什么花,在这新的起点,能一切顺利,充足自己,砥砺前行。在即将毕业的时候能找到一个地方继续打磨自己,是我的荣幸。虽然还有毕业论文和毕业设计带来的压力,“996”的作息也让我这个“夜猫子”完全不适应,但能继续充实自己真是个不错的选择。突然发现充实的一天,也还蛮不错的。嘛,也没什么可说的,可能未来的自己比现在的我能说吧。没什么宏大的希望的,只希望自己每天比前一天的自己好一点,多学一点,进步一点。苦也一天,乐也一天,快乐就好

2021-03-12 18:43:34 133 10

图书馆管理系统(数据库版).zip

这是利用数据库进行数据交互的图书馆管理系统,并且满足三层架构,还有篇文章进行大概的介绍,请放心食用。

2021-07-08

基于I/O流设计的图书馆管理系统

这个是我基于I/O流设计的图书馆管理系统项目总结,是有篇文章的,如果实在不会整再来下载这个完整的。文章:https://blog.csdn.net/GB__LaoWang/article/details/115914058

2021-04-23

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除