自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 git上拉下来的web项目,只有一个.git路径解决

用idea打开web项目;切换到对应的分支即可。

2024-03-13 18:09:37 173 1

原创 jmeter创建一个压测项目

6.添加响应断言,添加断言能够在结果树上面更清楚的看到自己想要的结果(下图是期望请求成功,添加的断言);5.添加Http请求信息,如下图,图中需要勾选的要和我这个一样,不然可能有些错误。7.最后一步添加结果树,结果树可以看到每次请求的响应,根据响应来看是否执行成功。2.接下来对Thread进行描述,也可以先使用默认的Thread进行操作。8.这样一个简单的压测案例就写完, 点击执行就能在结果树看到结果。4.在请求头里面添加必要的字段,可以只填必要字段就可以。3.添加http请求头的信息。

2023-08-09 17:42:57 779

原创 mysql中order by后面跟多个字段

mysql group by

2022-10-10 22:30:10 1157 1

原创 String字符串的比较(java)

经常我们都会遇到关于java字符串的比较这种现象,在这里总结一下首先看一段代码: public static void main(String[] arg){ String s1=new String("123"); String s2=new String("123"); String s3=new String("123"); System.out.println(s1==s1); System.out.println

2021-08-14 21:11:05 3947

转载 windows下pip安装报错:ERROR: Could not find a version that satisfies the requirement request (from version

出现这个错误的原因:网络不稳定,需要借助镜像。所以输入如下:pip install 包名 -i http://pypi.douban.com/simple/ --trusted-hostpypi.douban.com转自:https://blog.csdn.net/weixin_42840933/article/details/85308265

2021-07-29 16:40:19 2977

原创 Windows下python之pip升级之后的崎岖之旅AttributeError: module ‘typing‘ has no attribute ‘NoReturn‘----在这里做个笔记

本来是想安装一下pytest的。先说一下本人使用的环境背景:windows10;python3.6.1;我安装pytest的时候提醒我,我用的不是最新版本的pip,需要升级之后才可安装,所以我就按照电脑的意思给升级了一下。升级后就把我整抑郁了。这里放个截图如截图所示:AttributeError: module ‘typing’ has no attribute ‘NoReturn’。这个报错我想了很多办法,在网上也看了很多。但是好像没有适合我这个错误的解决方法。我试了试,其他的指令都可以

2021-07-29 16:33:31 4733 1

原创 Httprunner的环境搭建---看过此文章可以避免很多坑

首先我们来了解一下HTTPrunner的一些基本问题;HTTP runner的介绍,HTTP runner是面向Http(s)的通用测试框架,可以实现自动化测试、接口测试、持续集成等多种测试需求。HTTP runner的注意事项1.建议的python版本:HTTP Runner是基于python3.4以上的所有版本,并使用 Travis-CI 进行了持续集成测试,测试覆盖的版本包括2.7/3.4/3.5/3.6/3.7。虽然HTTP runner保留了对python2.7的兼容支持,但是更建议使用

2021-07-26 19:46:40 568 3

原创 二叉搜索树与双向链表

题目描述:描述输入一棵二叉搜索树,将该二叉搜索树转换成一个排序的双向链表注意:1.要求不能创建任何新的结点,只能调整树中结点指针的指向。当转化完成以后,树中节点的左指针需要指向前驱,树中节点的右指针需要指向后继2.返回链表中的第一个节点的指针3.函数返回的TreeNode,有左右指针,其实可以看成一个双向链表的数据结构4.你不用输出或者处理,示例中输出里面的英文,比如"From left to right are:"这样的,程序会根据你的返回值自动打印输出示例:输入: {10,6,14,4

2021-06-30 21:24:03 89

原创 复杂链表的复制

题目描述:输入一个复杂链表(每个节点中有节点值,以及两个指针,一个指向下一个节点,另一个特殊指针random指向一个随机节点),请对此链表进行深拷贝,并返回拷贝后的头结点。(注意,输出结果中请不要返回参数中的节点引用,否则判题程序会直接返回空)。 下图是一个含有5个结点的复杂链表。图中实线箭头表示next指针,虚线箭头表示random指针。为简单起见,指向null的指针没有画出。解题思路:首先,拿到这道题的时候,我们都知道链表的节点很容易复制,那链表的前后指向关系如何得到呢,其实还是得遍历链表来找到

2021-06-30 16:27:01 82

原创 二叉搜索树的后序遍历序列

题目描述:描述输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。(ps:我们约定空树不是二叉搜素树)示例1输入:[4,8,6,12,16,14,10]返回值:true解题思路:解这个题,首先要了解什么是二叉搜索树。二叉搜索树:当一个树不为空的时候,对于二叉树中的每一个节点都有:该节点的左子树不为空的时候,左子树的所有的值都是小于该节点的值,该节点的右子树不为空的时候,右子树的每一个节点的值都大于

2021-06-26 15:50:26 177

原创 栈的压入、弹出序列

题目描述:输入两个整数序列,第一个序列表示栈的压入顺序,请判断第二个序列是否可能为该栈的弹出顺序。假设压入栈的所有数字均不相等。例如序列1,2,3,4,5是某栈的压入顺序,序列4,5,3,2,1是该压栈序列对应的一个弹出序列,但4,3,5,1,2就不可能是该压栈序列的弹出序列。(注意:这两个序列的长度是相等的)示例1输入:[1,2,3,4,5],[4,3,5,1,2]返回值:false解题思路:按照我们平时的想法,判断一个序列是否可能是正确的出栈序列。首先判断出栈的第一个数字是多少,由于栈的

2021-06-20 16:11:00 100

转载 详解抽象类和接口的区别

首先了解两者的区别的话,先分别了解一下两个的含义:抽象类:抽象类是含有抽象方法,并且被abstract修饰的类。接下来我们来了解一下什么是抽象方法:抽象方法是被abstract修饰的方法,抽象方法只有声明,没有具体的实现。例如:abstract void fun();假如一个类含有抽象方法,那么这个类就是抽象类,那么这个类就需要使用abstract修饰。抽象类是不可以被实例化的,所以抽象类就适合被继承,如果一个抽象类没有被继承,那么这个抽象类就是白写了,没有任何意义。继承抽象类,就要实现抽象

2021-06-16 15:38:30 160

原创 输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)

题目描述:输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)示例1输入:{8,8,#,9,#,2,#,5},{8,9,#,2}返回值:true解题思路:首先最能想到的就是我们可以先遍历A树,然后在A树里面找是不是有和B树根节点相同的节点,如果有的话就从该节点向下,一直对比比较,看是否每一个节点相同,知道b数遍历到空节点。如果这个过程中返回值都为true,那就说明B树是A树的子结构,如果在这个过程中有一个不是的话,那就返回false。代码展示:/**

2021-06-15 21:02:41 140

原创 反转链表----遍历一次进行反转

题目描述:输入一个链表,反转链表后,输出新链表的表头。示例1输入:{1,2,3}返回值:{3,2,1}解题思路:思路之一:就是使用三个指针来对链表进行遍历,然后在每次改变指针位置的时候,改变链表连接的方向。代码展示:/*public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; }}*/public class

2021-06-14 19:02:07 184

原创 调整数组顺序使奇数位于偶数前面

题目描述:描述输入一个整数数组,实现一个函数来调整该数组中数字的顺序,使得所有的奇数位于数组的前半部分,所有的偶数位于数组的后半部分,并保证奇数和奇数,偶数和偶数之间的相对位置不变。解题思路:在这个题里面,要求奇数和技术,偶数和偶数之间的相对位置不变。所以可以采用一插入排序的思想对其进行解决。因为奇数是位于数组前面的,所以我们遍历数组,对于每个奇数做一下的操作,将奇数插入奇数序列的后面,最开始这个奇数序列是大小为0,然后一点一点的加长。最终前面的序列都是奇数,后面的序列都是偶数,所以就解决了这个问题

2021-06-14 16:13:59 129

原创 final、finally、finalize到底有什么区别呢

在学习java的过程中,我们总会遇到final、finally、fanalize这三个词,那这三个词到底是什么意思呢?或者说有什么用呢?我再这里总结一下,提供以后使用。Final是java里面的一个修饰词,他可以修饰类、方法、变量。final修饰一个类。表明该类不能被其他类继承,是一个最终类,并且在类里面所定义的成员方法也是隐含修饰为final。final修饰一个方法。表明该方法是最终方法,是不能通过继承该类来实现这个方法的,也不能够通过重写来改变方法。若父类中final方法的访问权限为priv

2021-06-14 14:42:57 1199 1

原创 sleep()方法和wait)方法的区别

我们都知道sleep()方法和wait()方法是两个不同的方法,但是却有着类似的作用。sleep() 方法的作用是在指定的毫秒数内让当前“正在执行的线程”休眠(暂停执行)。这个“正在执行的线程”是指 this.currentThread() 返回的线程。wait()方法是让当前线程等待。 wait会释放锁,等到其他线程调用notify方法时再继续运行。接下来介绍一下两个方法的区别:类的不同:wait()方法是object()类里面的,而sleep()是属于Thread类的。sleep()方法

2021-06-11 12:18:00 480 1

原创 二分法--旋转数组的最小数字

题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。输入一个非递减排序的数组的一个旋转,输出旋转数组的最小元素。NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。解题思路:通过本题,我们可以理解为:一个非递减数组进行了旋转,找出这个旋转后的数组里面的最小值。我们可以根据二分法的思想来进行寻找最小的数字。预设三个指针,一个指向区间头部,一个指向区间尾部,根据区间头尾求出区间的中间位置。比较中间位置的数字和区间尾部、区间头部。比较中间值和最后位置的值。分为三种情况:1

2021-06-10 11:11:23 102

原创 用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。

题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。解题思路:使用两个栈来实现一个队列的功能。首先我们了解的是栈是先进后出的特点,而队列是先进先出的特点。所以我们可以利用两个栈来实现先进先出的特点,即先将数字放进一个栈里面,然后再次出栈,放到另外一个站里面,知识后最先放进去的元素就在另一个栈的栈顶了,这个时候就可以出栈了。代码实现:import java.util.Stack;public class Solution { Stack&lt

2021-06-09 21:40:10 214

原创 输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。

题目描述:输入两个升序排列的序列,将两个序列合并为一个有序序列并输出。输入描述:输入包含三行,第一行包含两个正整数n, m(1 ≤ n,m ≤ 100),用空格分隔。n表示第二行第一个升序序列中数字的个数,m表示第三行第二个升序序列中数字的个数。第二行包含n个整数(范围1~5000),用空格分隔。第三行包含m个整数(范围1~5000),用空格分隔。输出描述:输出为一行,输出长度为n+m的升序序列,即长度为n的升序序列和长度为m的升序序列中的元素重新进行升序序列排列合并。示例1输入:5

2021-06-04 20:53:43 1798

原创 给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。

题目描述:给一个链表,若其中包含环,请找出该链表的环的入口结点,否则,输出null。解题思路:如上图,我们可以使用快慢指针的方法来解决该问题。快指针走两步,慢指针走一步,然后如果说链表存在环的话,就应该两个指针最终会相遇;假设相遇的点为p,并且假设环的入口为q。那么在相遇点p就会有快指针所走的路程是慢指针的两倍;可以得到表达式:2(a+b)=(a+nb+(n-1)c);可以得到a=c;根据这个表达式,我们可以再新增一个指针,让新增指针指向链表头部,然后头部指针和指向p点的慢指针一起以相同的速度走,这

2021-04-23 10:42:14 260 1

原创 get方法和post方法的区别和联系

1、功能不同:post是向服务器发送数据;get是向服务器获取数据;2、过程不同:get在浏览器回退时是无害的,但是post会再次提交请求;get请求会被浏览器主动缓存,但是post不会,除非手动设置;get请求只能进行URL编码,但是post支持多种编码方式;get请求的参数会保存在浏览器的历史记录中。get请求在URL中传送的参数是有长度限制的,但是post没有;get比post更加不安全,因为传送的参数直接暴露在URL上,所以不能来传送敏感信息。get参数通过URL传送,但是pos

2021-04-07 19:50:21 7716 1

原创 输入两个链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)

题目描述输入两个链表,找出它们的第一个公共结点。(注意因为传入数据是链表,所以错误测试数据的提示是用其他方式显示的,保证传入数据是正确的)思路分析:根据题意知道要求两条链表的第一个公共节点。我们很容易想到,当两个链表是一样长的话,我们就很容易知道第一个公共节点,即定义两个指针:分别指向两个链表的头,一起移动,每次判断是否相等,第一次相等的节点就是公共节点。根据这个思想我们可以构建相等的链表:比如ab两条链表,长度不相等,我们可以分别遍历a+b链表和b+a链表;这样两个链表的长度就相等了,那么同时移动,

2021-04-03 20:54:04 117

原创 输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。

题目描述输入一个正整数数组,把数组里所有数字拼接起来排成一个数,打印能拼接出的所有数字中最小的一个。例如输入数组{3,32,321},则打印出这三个数字能排成的最小数字为321323。示例1输入[3,32,321]返回值“321323”解题思路:先将数字i1和数字i2拼接在一起;然后将数字i2拼接在数字i1的前面,比较得到的两个数字哪个大;如果前者得到的数字大,那就交换i1和i2的所在位置;重复这个操作,然后将数组的数字按顺序拼接起来就是答案;代码展示:import java.util

2021-03-30 21:34:22 459

原创 软件测试的相关内容

1什么是软件测试?验证软件是否满足用户的需求;软件测试是按照一定的评判标准(需求)来进行的活动2.软件测试和软件开发的区别?软件开发:用程序开发的方式把用户的需求实现成一个软件(APP)软件测试:测试人员进行测试,查看是否满足需求;(1)软件测试和软件调试的区别?1.目的不同:软件测试是查看软件是否满足用户的需求;软件调试是开发人员检查程序是否实现了他想要程序实现的功能;软件测试:软件测试工程师;白盒测试工程师;开发人员(白盒测试:单元测试)2.阶段不同:软件测试贯穿到了整个软件开发的生命

2021-03-30 21:27:56 499

原创 内存溢出和内存泄露

内存泄露是指某个程序在申请了一些内存之后,长时间占用,无法释放已经申请的内存空间,一次的内存泄露没有什么大的影响,但是当多次内存泄露堆积起来就发展成了内存溢出(out of memory)**内存溢出(out of memory)**指的是在程序申请内存的时候,没有足够的内存空间给他;或者需要的是int类型的数,却放入了long类型的数。这些情况都会报错的;二者的关系内存泄漏的堆积最终会导致内存溢出内存溢出就是你要的内存空间超过了系统实际分配给你的空间,此时系统相当于没法满足你的需求,就会报内存溢出

2021-03-24 23:00:32 69

原创 HTTP状态码----这些你都知道吗

Http状态码是网络响应的三位数字代码。下来我们来看一下Http状态码有哪些,并且有什么具体意义:状态码意义100表示客户端应该继续发送请求101服务器知晓了客户端的请求,通知客户端用不同协议完成这个请求102代表处理将被继续执行200表示服务器已经成功处理了请求201表示请求成功并且服务器穿件了新的资源202服务器已经接受了请求,但尚未处理203服务器处理了请求,但是返回的实体头部是来自于第三方的拷贝204服务器成功处理了请

2021-03-23 14:15:27 76

原创 索引

索引是帮助MySQL高效获取数据的数据结构索引的分类:主键索引(PRIMARY KEY)唯一的表示,主键不可重复唯一标识(UNQUE KEY)避免重复的列出现,唯一索引可以重复,多个列都可以标识唯一索引常规索引(KEY/INDEX)默认的,index、key关键字来设置全文索引(FULLTEXT)在数据很少的情况下没有效果创建索引:Create Index 索引名 on 表(字段)。索引在小数据量的时候,用户不搭,但是在大量数据的时候就能有区别。索引原则:1.索引不是越多越

2021-03-23 13:52:42 72 1

原创 什么是堆排序

堆排序在平时用的也非常的多!这里来总结一下堆排序。首先我们来了解一下什么是堆:堆是一颗完全二叉树那堆有什么特点呢?堆中的节点有如下的特征:堆中的每个节点都是不大于或者不小于其父节点的根据堆的特征,我们可以将堆分为大顶堆和小顶堆:大顶堆:就是堆的每个节点值都是不大于其父节点的值。也就是树根的值是最大的,我们也叫大顶小顶堆:就是堆的每个节点值都是不小于其父节点的值,即树根的值是最小的,即小顶。接下来了解一下堆排序的思路:先拿升序来讲,先构建一个大顶堆;构建好之后将顶与最后一个叶子节点

2021-03-20 10:04:42 788 1

原创 详解希尔排序

平常我们使用的排序算法里,希尔排序是很重要的一个排序算法,在这里总结一下。希尔排序的核心思想是:对数据进行分组排序,组内排序完毕之后再次进行插入排序。详细代码实现: public static int[] shellSort(int[] arr) { if (arr.length <= 1) return arr; for (int i = arr.length / 2; i > 0; i /= 2) {//控制增量 System.o

2021-03-20 09:35:21 153

原创 语句 SELECT IF(-1,5,2) 的返回值是

语句 SELECT IF(-1,5,2) 的返回值是:26-15今天遇到一道关于数据库的题,专门查了一下,在这里总结一下:if(条件,表达式1,表达式2);这里,如果条件为真(非0),则返回表达式1,条件为假(0)返回表达式2.所以答案是5;...

2021-03-18 22:18:25 2393

原创 我爱写作--我的博客项目总结

写过一个简易的博客项目,在这里我总结一下这个博客项目的思想。我爱写作登录功能数据存储新增博客修改博客删除博客登录功能数据存储新增博客修改博客删除博客

2021-03-18 10:46:35 225

原创 输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。 如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。

题目描述:输入一个整数数组,判断该数组是不是某二叉搜索树的后序遍历的结果。如果是则返回true,否则返回false。假设输入的数组的任意两个数字都互不相同。(ps:我们约定空树不是二叉搜索树)示例1输入[4,8,6,12,16,14,10]返回值true思路分析:二叉搜索树的特点是:如果当前节点有左子树,那么左子树的每一个节点的值都小于等于当前节点的值;如果当前节点有右子树,那么右子树的每一个点的值大于当前节点的值;再来分析:树的后序遍历特点是什么,遍历顺序肯定是先左子树,后右子树,最

2021-03-16 17:18:32 1355

原创 从上往下打印出二叉树的每个节点,同层节点从左至右打印。

题目描述从上往下打印出二叉树的每个节点,同层节点从左至右打印。示例1输入复制{5,4,#,3,#,2,#,1}返回值复制[5,4,3,2,1]解题思路:使用一个队列来存储节点,每次从队列里面取出一个元素,同时将他的两个孩子节点放进队列里面。从而实现层序遍历代码实现:import java.util.ArrayList;import java.util.*;/**public class TreeNode { int val = 0; TreeNode left

2021-03-14 21:39:20 193

原创 私有IP地址

什么是私有IP地址呢,私有IP是主要用于在局域网中分配的。私有IP的主要范围有如下:私有(内网)IP地址范围:A类:10.0.0.0-10.255.255.255B类:172.16.0.0-172.31.255.255C类:192.168.0.0-192.168.255.255其中,主机号全为0的表示网段,主机号全为1表示广播地址。...

2021-03-14 14:13:31 6462 1

原创 开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动。

题目描述:开发一个坐标计算工具, A表示向左移动,D表示向右移动,W表示向上移动,S表示向下移动。从(0,0)点开始移动,从输入字符串里面读取一些坐标,并将最终输入结果输出到输出文件里面。输入:合法坐标为A(或者D或者W或者S) + 数字(两位以内)坐标之间以;分隔。非法坐标点需要进行丢弃。如AA10; A1A; %; YAD; 等。下面是一个简单的例子 如:A10;S20;W10;D30;X;A1A;B10A11;;A10;处理过程:起点(0,0)A10 = (-10,

2021-03-13 13:41:44 2094 8

原创 给定无序整数序列,求连续子串最大和。

题目描述:给定无序整数序列,求连续子串最大和,例如{-23 17 -7 11 -2 1 -34},子串为{17,-7,11},最大和为21输入描述:输入为整数序列,数字用空格分隔,如:-23 17 -7 11 -2 1 -34输出描述:输出为子序列的最大和:21思路:使用两个变量分别存储子数组最大的值,和当前位置子数组最大的值。遍历数组,并且每次都要判断当前最大值是否小于0,如果小于零就舍弃掉,因为会拉低后面的值。并且面次更新子数组和的最大值。import java.util.Scanner

2021-03-13 10:11:04 359

原创 操作给定的二叉树,将其变换为源二叉树的镜像。

题目要求:操作给定的二叉树,将其变换为源二叉树的镜像。解题思路:将根节点的两个子树交换。递归完成。代码:public class Solution { public void Mirror(TreeNode root) { if(root==null){ return; } TreeNode temp=root.right; root.right=root.left; root.left

2021-03-12 23:36:59 73

原创 super关键字详解

super注意点:1.super调用父类的构造方法,必须在构造方法的第一个2.super必须只能出现在子类的方法或者构造方法中!3.super和this不能同时调用构造方法!super和this的区别:代表的对象不同:this:本身调用者这个对象super:代表父类对象的应用前提:this:么有继承也可以使用super:只能在继承情况下才可以使用构造方法:this():本类的构造super():父类的构造以类来组织代码;以对象来封装数据有了有参构造,想用无参构造,就必须显式的定义

2021-03-12 23:36:07 101

原创 java字符串反转有哪些方法呢?

java中字符串反转是一个常见的题目,那么今天来总结一下在java中反转字符串的方法到底有哪些:1、使用java库函数中的方法reverse() private static String reverse1(String s) { StringBuilder st=new StringBuilder(s); return st.reverse().toString(); }2、转化为字符数组进行拼接:private static String revers

2021-03-11 20:34:59 1710

空空如也

空空如也

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

TA关注的人

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