自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(40)
  • 收藏
  • 关注

原创 【回溯、递归】-幸运的袋子

幸运的袋子_牛客题霸_牛客网解题思路:1、将袋子里面球的号码进行排序2、当一个号码和前面的号码无法组成幸运的袋子,那就直接break,因为后面的号码肯定比前面号码数字大或者等于,也无法构成幸运的袋子3、当我们返回上层递归时,需要回溯,继续计算前面的号码和当前位置后面的号码是否可以构成幸运的袋子注:特殊情况 a[i]=1,1和任何数的和都大于它和任何数的积import java.util.*;public class Main{ public static void m

2022-02-10 21:21:53 440

原创 【动态规划】跳石板

跳石板_牛客题霸_牛客网import java.util.*;public class Main{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); int n = scan.nextInt(); int m = scan.nextInt(); //定义步数,最多能走m+1步 int[] step = n.

2022-02-10 16:32:29 506

原创 每日一题-参数解析

参数解析_牛客题霸_牛客网解题思路:首先我们要输出参数个数,由于字符串当中的空格总是比参数个数少1(除双引号当中的空格),因此可以转化为计空格个数,定义count用来计空格数。注意题目中要求双引号中的字符串不考虑空格数,在遇到第一个双引号时,需要一直遍历字符,直到遇到第二个双引号。遍历双引号以外的空格就要count++。然后我们需要输出以空格分隔的各个字符串,这时我们会想如何输出双引号当中的字符串呢?我们可以定义一个状态flag,初始状态为1,当遇到第一个双引号时,flag^1,变为0,在fla

2022-02-10 10:18:33 229

原创 实现简易版的HTTP

package tcp;import java.io.*;import java.net.ServerSocket;import java.net.Socket;/** * 简易版HTTP */public class CustomHTTP { //端口号 private static final int port = 9004; public static void main(String[] args) throws IOException { .

2022-01-22 20:11:10 118

原创 TCP网络编程

注:先启动服务器端,再启动客户端package tcp;import java.io.*;import java.net.ServerSocket;import java.net.Socket;/** * TCP */public class TCPServer { //端口号 private static final int port = 9002; public static void main(String[] args) throws IOExcept

2022-01-21 22:18:50 1471

原创 如何使用传输层协议UDP进行网络编程以及部署UDP服务器端

一、UDP服务器端package udp;import java.io.IOException;import java.net.DatagramPacket;import java.net.DatagramSocket;import java.net.SocketException;/** * UDP服务器 */public class UDPServer { //端口号、接收数据容器的大小 private static final int port = 9001.

2022-01-21 20:22:53 2115

原创 Servlet相关理论概念的小结

一、Servlet运行的基本原理1、Tomcat = HTTP服务器-超文本传输协议(对接浏览器)+Servlet容器(对接web应用)层次关系Tomcat+Web应用都是工作在网络层次的应用层上二、浏览器常见错误1XX:Informational(信息性状态码)接收的请求正在处理2XX:Success(成功状态码)请求正常处理完毕3XX:Redirection(重定向状态码)需要进行附加操作以完成请求4XX:Client Error(服务器错误状态码)服务器无法处理

2022-01-08 10:36:52 58

原创 软件测试-selenuim

1、定位界面元素的方式有哪些?id/name/tag name/class name/liink text/partial link text/xpath/css selector# 用id来定位# driver.find_element_by_id("kw").send_keys("雪中悍刀行")# driver.find_element_by_id("su").click()# name定位 元素的定位方式有很多,但是要保证这种方式存在,唯一的定位到这个元素# driver.find_

2022-01-01 13:58:08 386

原创 abstract抽象类和interface接口的一些注意点

抽象类:包含抽象方法的类抽象方法:该方法没有具体的实现引入一个问题:抽象类不可以被实例化(new),那么我们需要抽象类干嘛?答:抽象类最大的意义是为了被继承!(1)、抽象类中,可以有和普通类当中一样的成员,但不能进行实例化(2)、一个普通类如果继承了抽象类,这个类需要重写这个抽象类当中的抽象方法(3)、一个抽象类A,继承一个抽象类B后,可以不重写该抽象类B中的方法,但一旦这个抽象类A被继承后,那么一定要重写所有的抽象方法(4)、抽象方法不能是private和final修饰的(

2021-12-24 10:12:21 191

原创 JS在Web中的应用

绑定事件,操作DOM树var input = document.querySelector('input');var ol = document.querySelector('ol');document.querySelector('button').onclick = function(){ var todo = input.value; console.log(todo); var li = `<li>${todo}</li>`; .

2021-12-22 17:31:33 525

原创 JavaScript-如何创建JS中的对象?

如何创建JS中的对象?var a = {};//JS中的空对象,类似Java中的空的mapvar student = { name:'小刘',//使用:分割key和value age:35};console.log(a);console.log(student);在浏览器中的开发者工具控制台上的执行结果如下:访问方式:把student当成java中的对象去访问属性 把student当成java中的Map去获取key对应的v...

2021-12-21 21:19:53 605

原创 java基础训练Day1

1、List、Set、Map是否都继承自collection接口?答:不是。题解:2、下面返回true的是?public class Square { long width; public Square(long l) { width = l; } public static void main(String arg[]) { Square a, b, c; //在栈上分配了三个内存a,b.

2021-12-20 20:17:12 259

原创 每日一题-求最大连续bit数

求最大连续bit数__牛客网考点:位运算解题思路:定义count,将二进制的最后一位与上1,结果为1时,count++,然后将二进制右移一位,再进行上步操作。当结果为0时,将count置为0,但是此时如何保存先前的count值呢?我们可以再定义一个modcount来保存之前记录的count值,再次遇到0时,将此时的count值与modcount值进行比较(这里将用到库函数,Math.max()),保留大的值。import java.util.Scanner;public class Main

2021-12-18 09:04:06 189

原创 链表-链表相关操作-反转链表

题目描述:输入一个链表,反转链表后,输出新链表的表头反转链表_牛客题霸_牛客网解题思路:方法一、定义三个指针,第三个指针用来防止断链 方法二、定义一个新节点,采用头插的思想进行反转一、三指针方法/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/p...

2021-12-17 19:14:01 497

原创 每日一题-走方格的方案数

走方格的方案数__牛客网结论:n==1&&m>=1时 路径总条数为n+m,m==1&&n>=1时 路径总条数为n+m下面来考虑n>1&&m>1的情况import java.util.Scanner;public class Main{ public static void main(String[] args){ Scanner scan = new Scanner(Syste..

2021-12-17 16:04:21 606

原创 JavaScript-JS语法

1、prompt-弹出一个输入框任意打开浏览器页面->更多工具->开发者工具->控制台2、alert-弹出一个警示对话框3、console.log-在控制台打印一个日志如何进行JS编写?(关联在HTML中执行)1)内部方式<!DOCTYPE html><html lang="en"><head> <meta charset="UTF-8"> <title>演示...

2021-12-16 19:48:26 914

原创 每日一题-另类加法

另类加法__牛客网考点:位运算首先要熟悉相关位运算&按位与:如果对应位有0,这一位结果就为0 0010&0110=0010|按位或:如果对应位有1就是1,其余都是0^按位异或:一样的位置为0,不一样的位置为1<<左移:0000 1011 << 1(左移1位)= 0001 0110>>右移:0000 1011 >> 1(右移1位)= 0000 0101>>>无符号右移:不管符号位是0还是1,都补0

2021-12-14 15:53:50 872

原创 每日一题-找最小公倍数

求最小公倍数__牛客网import java.util.*;public class Main{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); int m = scan.nextInt(); int n = scan.nextInt(); int mn = gcd(m,n); Sys..

2021-12-09 18:03:13 146

原创 每日一题-合法括号序列判断

合法括号序列判断__牛客网思路:1、如果字符串长度不为偶数,直接返回false2、当长度为偶数时,遍历字符串,当遇到左括号时入栈,如果遇到右括号,看栈顶元素是否为左括号,如果是,左括号出栈,与右括号匹配,继续遍历3、如果遇到一个非括号的字符,直接返回falseimport java.util.*;public class Parenthesis { public boolean chkParenthesis(String A, int n) { i.

2021-12-08 18:05:00 254

原创 HTML实现

表单标签:form标签:<form action="test.html"> ... </form> 描述了要把数据按照什么方式,提交到哪个页面中input标签:type取值种类有button、checkbox、text、file、image、password、radio... 1)文本框 <input type="text"> ...

2021-12-08 16:54:24 227

原创 每日一题-字符串中找出连续最长的数字串

字符串中找出连续最长的数字串_好未来笔试题_牛客网解题思路:要找出最长的数字串,则需要创建两个用来存放数字串的字符串,用于比较长度import java.util.*;public class Main{ public static void main(String[] args){ Scanner scan = new Scanner(System.in); String str = scan.nextLine(); Strin.

2021-12-08 08:33:47 309

原创 HTML相关操作

一、1.段落标签:<p>段落</p>2.换行标签:<br> 一般放在段落末尾,是单标签3.格式化标签:<b>加粗</b> <em>倾斜</em> <i>倾斜</i> <del>删除线</del> <s>删除线</s> ...

2021-12-07 16:27:13 146

原创 每日一题-把字符串转换成整数

把字符串转换成整数__牛客网如果字符串存在,则考虑第一个字符为+、第一个字符为-、存在不合法字符三种特殊情况public class Solution { public int StrToInt(String str) { //首先将字符串转为数组 char[] ch = str.toCharArray(); if(ch == null || ch.length ==0) return 0;//判断ch为空和长度为0的情况 .

2021-12-07 08:34:16 84

原创 每日一题-连续最大和

连续最大和_滴滴笔试题_牛客网题目描述:一个数组有 N 个元素,求连续子数组的最大和。 例如:[-1,2,1],和最大的连续子数组为[2,1],其和为 3解题思路:如果前面的数加起来为负数,再加上自己的会比本身更小,dp[i]就取array[i]import java.util.*;public class Main{ public static int getMax(int a,int b){ return a>b?a:b; } .

2021-12-06 21:09:13 276

原创 设计测试用例的方法-因果图法

用因果图法设计测试用例的步骤:(1)分析出所有的输入、输出(2)找出输入输出之间的逻辑关系(3)根据输入输出之间的关系画因果图(4)根据因果图画判定表(5)根据判定表设计测试用例如:淘宝618活动,订单已提交,订单合计金额大于300元或有红包,则有优惠。第一步:输入-订单已提交、订单未提交、金额大于300、金额小于等于300、有红包、没有红包 输出-有优惠、没有优惠第二步:金额大于300与有红包是或关系、订单已提交与金额大于300、有红包中的一个...

2021-12-05 09:26:46 983

原创 每日一题-统计回文

统计回文__牛客网题目描述:“回文串”是一个正读和反读都一样的字符串,比如“level”或者“noon”等等就是回文串。花花非常喜欢这种拥有对称美的回文串,生日的时候她得到两个礼物分别是字符串A和字符串B。现在她非常好奇有没有办法将字符串B插入字符串A使产生的字符串是一个回文串。你接受花花的请求,帮助她寻找有多少种插入办法可以使新串是一个回文串。如果字符串B插入的位置不同就考虑为不一样的办法。例如:A = “aba”,B = “b”。这里有4种把B插入A的办法:* 在A的第一个字母之前: "ba

2021-12-03 17:43:36 296

原创 HashMap

hashmap是基于哈希表的实现的接口,允许null值、null键构造方法:1)HashMap()构造一个空的HashMap,默认初始容量是16,默认负载系数是0.752)HashMap(int initialCapacity)构造一个空的HashMap具有指定的初始容量和默认负载因子0.753)HashMap(int initialCapacity,float loadFactor)构造一个空的HashMap,具有指定的初始容量和负载因子常见的一些方法:clone()-返回此Has

2021-12-01 20:44:03 483

原创 数据建模-数据库

一、什么是数据建模?设计人员将现实世界(逻辑层)的某个场景(主要表现为其中的实体概念和关系概念),通过一系列步骤,设计为可以进行计算机世界工作的素材。(表或者类和对象)二、数据建模中的指导步骤1)确定角色2)根据角色,写故事(动作)3)根据故事,找实体4)表现实体之间的关系(借助E-R图工具)5)为实体、关系确定属性(借助三大范式)6)为每个属性确定类型+约束7)完成建表(通过workbench建好表,复制出来)如:第一步:确定角色 博主、...

2021-11-30 14:45:21 1066

原创 每日一题-倒置字符串

倒置字符串__牛客网题目描述:输入l like Beijing.时,得出Beijing. like limport java.util.Scanner;public class Test { public static void main(String[] args) { Scanner scan = new Scanner(System.in); String str = scan.nextLine(); String[] strArr.

2021-11-29 21:42:44 134

原创 每日一题-组队竞赛

组队竞赛__牛客网思路:假如有9个选手,他们的水平值分别为2,6,4,7,5,8,3,8,9,每个队伍有3个队员,即可以分为3组,要求每组第二高水平值的总和,使之成为最大值。(1)首先将9个水平值看作数组中的元素,将它们从小到大排序,得到2,3,4,5,6,7,8,8,9(2)然后依次从第一个位置、最后一个位置及倒数第二格位置取,可使第二高水平值的总和最大。分为3组:2,8,9 3,7,8 4,5,6总和为20import java.util.Arrays;impo...

2021-11-29 18:13:29 97

原创 注入&事务&索引

一:SQL注入问题(SQL Inject):由于是SQL拼接的方式处理的SQL,存在安全风险什么是SQL注入? “SQL注入即是指web应用程序对用户输入数据的合法性没有判断或过滤不严,攻击者可以在web应用程序中事先定义好的查询语句的结尾上添加额外的SQL语句,在管理员不知情的情况下实现非法操作,以此来实现欺骗数据库服务器执行非授权的任意查询,从而进一步得到相应的数据信息。”SQL注入的处理方式:带参数的SQL处理(PrepareStatement更应该使用的方案)SQL注入的

2021-11-29 16:22:29 436

原创 每日一题-链表(前后指针的使用)

public class Solution { public ListNode FindKthToTail(ListNode head,int k) { //思路:定义两个指针,front,rear,先让front走k步,再让rear开始走,和front同时遍历,最后front所在位置就是倒数第k个节点的位置 if(head == null || k < 0) return null; ListNode front = head; .

2021-11-28 17:10:35 833

原创 JDBC相关代码-图书管理

public class Record { public Integer rid; public User user; public Book book; public LocalDateTime borrowedAt; public boolean returned; public LocalDateTime returnedAt; public Record(){ this.rid = rid; this.use.

2021-11-26 15:34:15 268

原创 每日一题-链表

题目描述:输入一个链表,按链表从尾到头的顺序返回一个ArrayList思路1:stack方式,创建一个栈(特点:先进后出)让链表的元素依次放入栈中,然后出栈放入链表中思路2:逆置数组.set方法本质上是一种替换操作,要设置某个位置上的元素,这个位置在设置前必须有元素,否则抛出异常思路3:递归 首先要知道递归是自己调用自己,相当于数学归纳法由于数据量可能过大,这个代码可能会导致栈溢出思路4:反转链表,在原来链表的基础上直接修改指向...

2021-11-25 17:26:21 159

原创 二叉树-数据结构(1)

(1)求第k层结点的个数执行结果为1思路:假设根结点在k层,此时只需找到第一层即可如图,如果要找第三层结点的个数,设A所在的层数为三层,A(k=3),开始遍历A的左,直到k=1,此时返回B,开始遍历B的右,当k=1时,返回1,此时遍历A的右(k=3),同上。注意:思路要清晰!(2)查找结点思路:显而易见,一定是要考虑二叉树为空和根结点就为所要查找的结点的情况,如果都不符合,则考虑其它情况,ret用来接收结点,如果ret == null,就再次判断root是否...

2021-11-05 17:30:46 34

原创 抽象类和接口的区别

抽象类:包含抽象方法的类称为抽象类,抽象方法又指没有具体实现的方法。(1)抽象类中可以有和普通类当中的一样的成员(普通成员、构造方法、普通方法),就是不可以实例化。(2)一个普通类如果继承了抽象类,这个类需重写这个抽象类中的抽象方法。(3)一个抽象类A继承抽象类B后,可以不重写该抽象类B中的方法,但一旦这个抽象类A被继承后,那么一定要重写所有的抽象方法。(4)抽象方法不能是private和final修饰。注:抽象类最大的意义就是为了被继承。接口:接口中包含的都是抽象方法.

2021-10-31 09:11:13 39

原创 认识构造方法

注:在没有写构造方法时,编译器自动生成不带参数的构造方法!

2021-10-20 21:22:05 52

原创 数组的定义与使用

数组:本质是能让我们“批量”创建相同类型的变量下面通过代码示例来更了解数组的相关定义与使用(1)获取数组长度(2)访问元素(3)了解下标越界(4)遍历数组 方法一 方法二 for-each(可以避免循环条件和更新语句写错)(5)打印数组内容(6)参数传数组类型注:在函数内部修改数组内容,函数外部也发生改变。数组名array是一个“引用”,当传参的时候,是按照引用传参的...

2021-10-18 21:39:36 97

原创 Java中的类型转换

Java作为一个强类型编程语言,当不同类型之间的变量相互赋值时,会有较严格的校验1.int和long/double相互赋值(1)int和long相互赋值(2)int和double相互赋值结论:long/double表示的范围更大,可以将int赋值给long/double,但是不能将long/double赋值给int2.int和boolean相互赋值结论:int和boolean不能相互赋值3.int字面值常量给byte赋值...

2021-10-12 20:24:09 83

原创 初始Java

一、Java的入门程序1.文件名应与类名保持一致 ,这里的类名为TestDemo 类名要满足大驼峰,如HelloWorld,不能用拼音和数字2.public:访问修饰限定符 private(私有)、protected(受保护)、default(默认)也为Java中的访问修饰限定符3.class:定义类的关键字注:一个java文件当中只能有一个public类4.程序的入口只有一个,就是main方法,也称main函数二、Java的基本数据类型1.整数类型...

2021-10-11 22:13:09 45

空空如也

空空如也

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

TA关注的人

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