- 博客(58)
- 收藏
- 关注
原创 【算法题】链表反转——迭代,递归
链表反转题目一、迭代二、递归题目将单链表的链接顺序反转过来例如:输入:1 => 2 => 3 => 4 => 55 => 4 => 3 => 2 => 1一、迭代package day01;public class ReverseList { static class ListNode{ int val; ListNode next; public ListNode(int val ,
2022-04-03 12:21:32 793
原创 【JDBC】JDBC的Statement版,PreparedStatement版,并且含有取消自动提交事务的方法与最后的封装JDBC的方法
JDBC前言:一、JDBC是什么?本质是什么?二、JDBC编程六步!!!三、Statement创建连接四、PreparedStatemen创建连接五、取消自动提交事务的方法六、封装方法前言:JDBC开发前的准备工作,先从官网下载对应的驱动jar包,比如MySQL的一、JDBC是什么?本质是什么?Java DataBase Connectivity(Java语言连接数据库)JDBC是SUN公司制定的一套接口(interface)  
2022-03-16 01:24:05 764 2
原创 【JavaSE】反射补充
一、问题引出反射1.根据配置文件 re.properties 指定信息,创建Cat对象病调用方法re.properties信息classfullpath=com.hspedu.Catmethod=hi
2022-03-07 15:29:10 361
原创 【JavaSE】Properties类,交互文件
Properties类 一、先看一个需求二、类的基本介绍三、应用案例1)使用Properties类完成对MySQL.properties的读取2)使用Properties 类来创建 配置文件, 修改配置文件内容三、底层机制一、先看一个需求如下一个配置文件 mysql.propertiesip = 192.168.0.13user = rootpwd = 12345请问编程呢个读取 ip、user和pwd的值是多少第一种:用传统的字节流读取第二种:使用Properties类可以方便实现第一
2022-03-05 16:59:05 598
原创 【数据库四】索引,视图,DBA常用命令,数据库设计范式
数据库四一、索引(index)1、什么是索引2、索引的实现原理3、在mysql当中,主键上,以及unique字段上都会自动添加索引的4、索引怎么创建与怎么删除5、在mysql当中,怎么查看一个SQL语句是否使用了索引进行检索6、索引有失效的时候,什么时候索引失效7、索引是各种数据库进行优化的重要手段。优化的时候优先考虑的因素就是索引二、视图1、什么是视图2、怎么创建视图对象?怎么删除视图对象?3、视图的作用4、视图对象在实际开发中的作用《方便,简化开发,利于维护》三、DBA常用命令四、数据库设计三范式1、什
2022-03-01 15:09:37 209
原创 【数据库三】insert插入多条数据,对表的操作,约束,存储引擎,事务
数据库三一、insert语句可以一次插入多条记录二、对表的操作1.快速创建表2.将查询结果插入到一张表当中3.快速删除表中的数据-truncate4.对表结构的增删改三、约束1、什么是约束?2、约束包括哪些?3、非空约束:not null4、唯一性约束: unique5、主键约束(primary key,简称PK)非常重要6、外键约束(foreign key,简称FK)非常重要四、存储引擎1、什么是存储引擎2、怎么给表添加/指定“存储引擎”3、怎么查看mysql支持哪些存储引擎4、关于mysql常用的存储引
2022-03-01 12:17:22 13880
原创 【数据库34道习题(二)】通过34道习题来真正掌握sql语句的运用
习题篇(二)首要:三表的全部数据查询empdeptsalgrade18、列出薪金比"SMITH" 多的所有员工信息19、 列出所有"CLERK"( 办事员) 的姓名及其部门名称, 部门的人数20、列出最低薪金大于 1500 的各种工作及从事此工作的全部雇员人数21、列出在部门"SALES"< 销售部> 工作的员工的姓名, 假定不知道销售部的部门编号.22、列出薪金高于公司平均薪金的所有员工, 所在部门, 上级领导, 雇员的工资等级.23、 列出与"SCOTT" 从事相同工作的所有员工及部门名称2
2022-02-28 15:04:28 775
原创 【数据库34道习题(一)】通过34道习题来真正掌握sql语句的运用
mysql> select * from emp;+-------+--------+-----------+------+------------+---------+---------+--------+| EMPNO | ENAME | JOB | MGR | HIREDATE | SAL | COMM | DEPTNO |+-------+--------+-----------+------+------------+---------+-------
2022-02-28 14:44:12 545 1
原创 【数据库二】 distinct,连接查询,子查询,union,limit,表的创建,插入,修改,删除,还包括date和datetime
文章目录把查询结果去除重复记录-distinct一、连接查询1、什么是连接查询2、连接查询的分类3、当两张表进行连接查询时,没有任何条件的限制会发生的现象4、避免笛卡尔积现象5、内连接之等值连接6、内连接之非等值连接7、内连接之自连接8、外连接9、三张表,四张表的连接二、子查询1.什么是子查询2、子查询都可以出现在哪里3、where子句中的子查询4、from子句中的子查询三、union合并查询结果集四、limit(非常重要)1、limit作用2、limit怎么用3、分页五、DQL语句的大总结六、表的创建(建
2022-02-17 00:35:14 368
原创 【数据库一】 数据库概述、常用命令、查看‘演示数据’的表结构、简单查询,条件查询、排序数据、数据处理函数(单行处理函数)、分组函数(多行处理函数)、分组查询
数据库与单表的查询一、数据库、数据库管理系统和SQL二、数据库当中最基本的单元是表:table三、关于SQL语句的分类四、常用命令1.退出mysql :exit2.查看mysql中有哪些数据库:show databases3.选择使用某个数据库:use 'xxx'4.创建数据库: create database 'xxx'5.查看某个数据库的表:show tables6.查看mysql数据库的版本号:select version()7.查看当前使用的是哪个数据库:select database()导入测试数
2022-02-14 13:45:36 470
原创 【Java数据结构于算法】哈希表
哈希表哈希表的基本介绍代码实现哈希表的基本介绍散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。比如:总共有15个链表,id为111的数据该放入哪个链表? 111%15=7,所以就放到编号为7的链表里图解:HashTab管理数组,每个数组都存了一个EmpLinkedList链表,用取模法来判断id放入哪个链表里,然后
2022-02-08 17:28:37 105
原创 【Java数据结构与算法】排序七大算法,包括冒泡排序,选择排序,插入排序,希尔排序,快速排序,归并排序,基数排序
七大排序算法一、冒泡排序二、选择排序三、插入排序四、希尔排序对有序序列在插入时采用交换法对有序序列在插入时采用移动法, (就是使用了插入法)五、快速排序六、归并排序七、基数排序一、冒泡排序冒泡排序(Bubble Sorting)的基本思想是:通过对待排序序列从前向后(从下标较小的元素开始),依次比较相邻元素的值,若发现逆序则交换,使值较大的元素逐渐从前移向后部,就象水底下的气泡一样逐渐向上冒。因为排序的过程中,各元素不断接近自己的位置,如果一趟比较下来没有进行过交换,就说明序列有序,因此要在排序过程中
2022-02-07 17:29:22 2175 1
原创 【Java数据结构与算法】递归与回溯法 包含迷宫回溯,八皇后问题,详细分析了回溯的实现,还有如何判断数组斜方的操作
递归一、递归的概念与调用机制1.打印问题2.阶乘问题二、递归需要遵守的重要规则三、递归-迷宫问题四、八皇后问题(回溯算法)解决思路上代码分析与总结一、递归的概念与调用机制简单的说: 递归就是方法自己调用自己,每次调用时传入不同的变量.递归有助于编程者解决复杂的问题,同时可以让代码变得简洁。我列举两个小案例:1.打印问题test(4)///////public static void test(int n) {if (n > 2) { test(n - 1);}System.out
2022-02-05 12:02:17 478
原创 【Java数据结构与算法】栈与逆波兰表达式 内含:逆波兰计算器,中缀表达式转后缀表达式,关于matches()方法的使用
栈栈的介绍一、pandas是什么?二、使用步骤1.引入库2.读入数据总结栈的介绍栈是一个先入后出(FILO-First In Last Out)的有序列表。栈(stack)是限制线性表中元素的插入和删除只能在线性表的同一端进行的一种特殊线性表。允许插入和删除的一端,为变化的一端,称为栈顶(Top),另一端为固定的一端,称为栈底(Bottom)。根据栈的定义可知,最先放入栈中元素在栈底,最后放入的元素在栈顶,而删除元素刚好相反,最后放入的元素最先删除,最先放入的元素最后删除出栈(pop)和入.
2022-02-04 02:49:03 151
原创 【Java数据结构与算法】链表 包含:单链表,双向链表,环形链表,约瑟夫问题
链表链表(Linked List)介绍一、单向链表代码实现二、单链表面试题求单链表中有效节点的个数查找单链表中的倒数第k个结点 【新浪面试题】单链表的反转【腾讯面试题】方法一:创建新链表来保存数据方法二:使用栈的数据结构从尾到头打印单链表 【百度,要求方式1:反向遍历 。 方式2:Stack栈】链表(Linked List)介绍1 链表是以节点的方式来存储,是链式存储2 每个节点包含 data 域, next 域:指向下一个节点.3 如图:发现链表的各个节点不一定是连续存储.4 链表分带头节点的
2022-02-02 20:46:16 174
原创 【Java数据结构与算法】数组模拟队列与数组模拟环形队列
队列队列介绍一、数组模拟队列思路分析问题分析二、数组模拟环形队列队列介绍队列是一个有序列表,可以用数组或是链表来实现。遵循先入先出的原则。即:先存入队列的数据,要先取出。后存入的要后取出一、数组模拟队列队列本身是有序列表,若使用数组的结构来存储队列的数据,则队列数组的声明如下图, 其中 maxSize 是该队列的最大容量。因为队列的输出、输入是分别从前后端来处理,因此需要两个变量 front及 rear分别记录队列前后端的下标,front 会随着数据输出而改变,而 rear则是随
2022-02-01 19:42:27 1150
原创 【Java数据结构与算法】稀疏数组,包括io存盘与不存盘两种
稀疏数组为什么要有稀疏数组?一、稀疏数组的处理方法二、应用实例1.不存盘情况2.存入磁盘情况为什么要有稀疏数组?当我们在编写五子棋的棋盘时,有存盘退出和续上盘的功能。但是当我们用1和2保存黑白棋时,很多时候会出现数组里只有少数1与2,其余都是0,这样保存棋盘时就会出现很多无用的0。因此应对这种情况,我们常常会使用稀疏数组来减少程序规模当一个数组中大部分元素为0,或者为同一个值的数组时,可以使用稀疏数组来保存该数组。一、稀疏数组的处理方法记录数组一共有几行几列,有多少个不同的值把具有不同值
2022-01-31 00:51:10 106
原创 【JavaSE】坦克大战,代码含超详细注释(核心类每行都有),看了就懂。包含:面向对象 OOP IO编程 文件编程 算法 GUI 多线程 线程知识
坦克大战前言一、pandas是什么?二、使用步骤1.引入库2.读入数据总结前言提示:这里可以添加本文要记录的大概内容:例如:随着人工智能的不断发展,机器学习这门技术也越来越重要,很多人都开启了学习机器学习,本文就介绍了机器学习的基础内容。提示:以下是本篇文章正文内容,下面案例可供参考一、pandas是什么?示例:pandas 是基于NumPy 的一种工具,该工具是为了解决数据分析任务而创建的。二、使用步骤1.引入库代码如下(示例):import numpy as npimport
2022-01-29 16:01:32 3868
原创 【JavaSE】常用类 String 类 、StringBuffer、StringBuilder 类、Date 类、 DateFormat 类 、Calendar 类 、Random、Math
常用类一、String 类二、StringBuffer、StringBuilder 类StringBuffer VS StringBuilder VS String三、Date & DateFormat 类四、Calendar(日历)类五、Random类与Math类六、BigDecimal 类一、String 类String类较常用构造方法:String(s),String (char a[ ]),String(char a[ ],int startIndex,int count)
2022-01-25 12:43:01 333
原创 【JavaSE】线程,同步与死锁,Thread类 ,Runnable接口 ,synchronized (),wait(),经典案例:生产者与消费者
线程一、Java中多线程的创建和使用Thread类继承Thread类创建线程实现Runnable接口(一般用这个)继承方式和实现方式的联系与区别二、Thread的相关方法三、线程的生命周期四、线程的同步Synchronized的使用方法1.不加同步锁效果2.直接在方法上加上synchronized关键字3.在普通方法上加同步锁synchronized,锁的是整个对象,不是某一个方法4.不同的对象就是不同的锁,普通方法加synchronized,线程使用不同的此方法的对象,还有共享资源的问题5.静态的方法加s
2022-01-24 16:31:19 483
原创 【JavaSE】反射机制,Class类与动态代理 包括解除私有分装constructor.setAccessible(true)和class.getConstructor().newInstance
反射反射概要Java ReflectionJava反射机制提供的功能Java反射机制研究及应用一、 Class类和实例化Class类对象Class类实例化Class类对象(四种方法)二、运行时创建类对象并获取类的完整结构1.实现的全部接口和继承的父类2.获取公有的构造器和包括私有的全部构造器3.用反射创建一个对象4.获取全部的方法5.获取全部的Field和所在类的包三、通过反射调用类的指定方法、指定属性1.调用指定方法2. 调用指定属性四、动态代理反射概要Java ReflectionReflect
2022-01-22 22:11:32 1190
原创 【JavaSE】可变参数
public class Person3 { /** * 用数组的方式来传递可变个数的参数 * 如果没有参数,就要定义一个空数组或者是null * @param args */ public void printInfo(String[] args){//问题,我们能够的打印的信息都有来源于方法的参数也就是形参的传递 //我现在可能给方法要传递的不同的参数?如果在这种情况下,我们不知道想要给方法传递多少个参数(姓名、性别、年龄;也可能身份证号码、家庭住址、手机号) for(int
2022-01-21 18:13:54 145
原创 【JavaSE】商场商品管理系统 使用I/O流输出到外部文件 内涵list.stream.filter常用方式
代码//写一个程序能够对商品进行增,删,改,查import java.io.*;import java.util.*;public class MAIN { private static Scanner scanner = new Scanner(System.in); public static final String PATH = "D:\\JavaProjects\\b站草稿\\大作业商品管理器\\src\\Message.txt"; public static
2022-01-21 05:29:51 690
原创 【JavaSE】I/O控制流 下 包括:转换流,标准输入输出流,对象流,对象序列化,I/O总结
I/O转换流标准输入输出流运用一运用二对象流RandomAccessFile 类总结转换流转换流提供了在字节流和字符流之间的转换Java API提供了两个转换流: InputStreamReader和OutputStreamWriter字节流中的数据都是字符时,转成字符流操作更高效。InputStreamReader用于将字节流中读取到的字节按指定字符集解码成字符。需要和
2022-01-20 15:42:35 401
原创 【JavaSE】I/O流上 包括:File类,字节字符流,缓冲流
I/O流主要内容一、File 类1.访问文件名2.文件检测3.获取常规文件信息4.文件操作相关5.目录操作相关二、使用步骤1.引入库2.读入数据总结主要内容java.io.File类的使用IO原理及流的分类文件流: FileInputStream / FileOutputStream / FileReader / FileWriter缓冲流:  
2022-01-19 10:20:09 239
原创 【JavaSE】枚举类
枚举概述一、使用 enum 定义枚举类标题枚举类和普通类的区别:枚举类的属性使用 Enum 定义的 Season实现接口的枚举类其他方法概述在某些情况下,一个类的对象是有限而且固定的。例如季节类,只能有 4 个对象手动实现枚举类:private 修饰构造器属性使用 private final 修饰把该类的所有实例都使用 public static final 来修饰一、使用 enum 定义枚举类标题枚举类和普通类的区别:使用 enum 定义的枚举类默认继承了 java.lang.E
2022-01-16 16:34:36 213
原创 【JavaSE】泛型(内含可变参数)
泛型一、为什么使用泛型二、泛型怎么用1.泛型类2.泛型方法3.泛型接口4.泛型通配符一、为什么使用泛型泛型,JDK1.5新加入的,解决数据类型的安全性问题,其主要原理是在类声明时通过一个标识表示类中某个属性的类型或者是某个方法的返回值及参数类型。这样在类声明或实例化时只要指定好需要的具体的类型即可。Java泛型可以保证如果程序在编译时没有发出警告,运行时就不会产生ClassCastException异常。同时,代码更加简洁、健壮。注意:Java中的泛型,只在编译阶段有效。在编译过程中,正确检验泛
2022-01-16 00:49:17 232
原创 【JavaSE】集合 包含HashSet集合 TreeSet集合 List集合 Map集合 Iterator迭代器
Java 集合概述Collection 接口Iterator 接口Collections 工具类查找、替换同步控制一、HashSet基础功能实现遍历集合方法不可重复性和不确定顺序性二、TreeSet自然排序实现功能自定义类放入集合的排序三、List与ArrayList四、Map 接口与HashMap类 TreeMap基本功能字典排序概述Java集合类存放于 java.util 包中,是一个用来存放对象的容器。①、集合只能存放对象。比如你存一个 int 型数据 1放入集合中,其实它是自动转换成 Int
2022-01-14 22:32:07 258
原创 【JavaSE】异常处理 try...catch...finally处理异常
异常处理异常概述一、使用try...catch...finally处理异常二、另外的抛出异常方式1.声明抛出异常2.重写方法抛出异常规则三、人工抛出异常异常概述任何一种程序设计语言设计的程序在运行时都有可能出现错误,例如除数为0,数组下标越界,要读写的文件不存在等等。捕获错误最理想的是在编译期间,但有的错误只有在运行时才会发生。对于这些错误,一般有两种解决方法:1.遇到错误就终止程序的运行。2.由程序员在编写程序时,就考虑到错误
2022-01-12 11:56:54 934
原创 【学校实验】学生管理系统Java
学生类的定义package StudentProject;// 2.1.学生类public class Student { private String sid; private String name; private int age; private String address; public Student() { } public Student(String sid, String name, int age, String a
2021-09-06 17:09:20 177
原创 【学校实验】学生管理系统包含外部输入Java
定义学生类/* * 学生类 */public class Student { //学号 private String id; //姓名 private String name; //年龄 private String age; //家庭住址 private String address; public Student() { } public Student(String id, String name,
2021-09-06 17:07:43 213
原创 【学校实验】学生考勤系统C++
学生考勤系统#include<iostream>#include<string>#include<fstream>using namespace std;class student//声明一个类为 people{private: char day[20]; char name[20]; int n; char kname[20]; char lx[20];public:// 公有数据成员 void setn
2021-09-06 17:04:50 924
原创 【学校实验】通讯录管理系统C++
通讯录管理系统一、代码二、总结一、代码//封装函数显示该界面,在main函数中调用这个封装函数#include<iostream>#include<string>#define MAX 1000using namespace std;void showMenu();//设计联系人的结构体 名字 性别 年龄 电话 住址struct People { //创建名字 string Pname; //创建性别 输入1为男 输入2为女 int Psex; //创
2021-09-06 16:51:57 214
原创 【学校实验+蓝桥杯题目】接水问题:学校里有一个水房,水房里一共装有m个龙头可供同学们打开水,每个龙头每秒钟的供水量相等,均为1。现在有n名同学准备接水,他们的初始接水顺序已经确定......
接水问题【问题描述】【输入格式】【输出格式】【输入案例】输入输出样例 1 说明思路代码实现【问题描述】学校里有一个水房,水房里一共装有m 个龙头可供同学们打开水,每个龙头每秒钟的 供水量相等,均为1。 现在有n 名同学准备接水,他们的初始接水顺序已经确定。将这些同学按接水顺序从1 到n 编号,i 号同学的接水量为wi。接水开始时,1 到m 号同学各占一个水龙头,并同时打开水龙头接水。当其中某名同学j 完成其接水量要求wj 后,下一名排队等候接水的同学k 马上接替j 同学的位置开始接水。这个换人的过程是
2021-04-12 18:10:04 3726
原创 【学校实验】停车场问题:设停车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。以栈模拟停车场,以队列模拟车场外的便道,按照从终端读入的输入数据序列进行模拟管理。
停车场问题问题描述测试数据基本要求实现提示代码实现栈的实现队列的实现主函数的实现问题描述设停车场内只有一个可停放n辆汽车的狭长通道,且只有一个大门可供汽车进出。汽车在停车场内按车辆到达时间的先后顺序,依次由北向南排列(大门在最南端,最先到达的第一辆车停放在车场的最北端),若车场内已停满n辆汽车,则后来的汽车只能在门外的便道上等候,一旦有车开走,则排在便道上的第一辆车即可开入;当停车场内某辆车要离开时,在它之后开入的车辆必须先退出车场为它让路,待该辆车开出大门外,其它车辆再按原次序进入车场,每辆停放在.
2021-04-12 17:56:18 9050 1
原创 【计算机算法与设计 C++版 】回溯法
回溯法递归回溯迭代回溯用回溯法求解背包问题方案1:生成所有子集逐个检查方案2:先按单价排序...旅行售货员问题旅行售货员问题——方案1旅行售货员问题——方案2递归回溯//P117递归回溯//思想→不可运行/* void Backtrack(int t)//t为解空间树的层数{ if(t>n)//递归出口,n为元素个数,若有n个元素,解空间树应有n层,所以若t>n说明已经找到解空间数中的一个死结点(子集) Output(x); else { for(int i=f(n
2021-03-20 17:18:48 164
原创 【计算机算法与设计 C++版 】贪心算法
贪心算法前言一、活动安排问题1.问题描述2.例 当前有4个活动3.程序实现推广二、贪心算法的基本要素1、贪心选择性质2、最优子结构性质3、贪心算法和动态规划算法的差异4.物品不可分——0-1背包问题前言贪心算法总是做出在当前看来是最好的选择。也就是说,贪心算法并不是从整体最优上加以考虑,它所做出的选择只是某种意义上的局部最优选择。当然,我们希望贪心算法得到的最终结果也是整体最优的。具有最优子结构性质的问题,可以用动态规划算法来解决,但是用贪心算法更简单,更直接且解题效率更高。总结:问题逐步求
2021-03-20 15:47:19 375
原创 【计算机算法与设计 C++版 】动态规划
动态规划前言一、矩阵连乘问题用动态规划法解矩阵连乘的最优计算次序问题二、动态规划算法的基本要素1、最优子结构2、重叠子问题3、备忘录方法前言 动态规划算法与分治法类似,其基本思想也是将待求解问题分解成若干个子问题,先求解子问题,然后从这些子问题的解得到原问题的解。不同: 适用于动态规划法求解的问题,经分解得到的
2021-03-20 13:20:37 448
原创 【计算机算法与设计 C++版 】递归与分治策略
递归与分治策略1.递归的概念①阶乘函数②Fibonacci数列Ackerman函数——双递归函数2.分治法的基本思想1.递归的概念递归算法 直接或间接地调用自身的算法称为递归算法。递归函数 用函数自身给出定义的函数称为递归函数。由分治法产生的子问题往往是原问题的较小模式,这就为使用递归技术提供了方便。在这种情况下,反复应用分治手段,可以使子问题与
2021-03-20 11:00:56 308
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人