自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

原创 Stack

栈:概念:特殊的线性表只能在固定的一段进行插入和删除(栈顶)原则:后进先出压栈:入数据在栈顶出栈:出数据在栈顶实现:顺序表,尾插+尾删E push(E item)压栈E pop()出栈E peek()查看栈顶元素Boolean empty()判断栈是否为空intsearch(Object)返回一个对象在此堆栈上的基于1的位置。public class MyStack { public static void main(String[] args) { Sta

2020-07-31 08:21:09 11

原创 泛型

泛型:将类型参数化 E的类型就是将来存储对象的实际类型泛型类:就是把泛型定义在类上,用户使用该类的时候,才把类型明确下来…泛型的分类:泛型类 泛型方法语法:< >泛型的标志 编译阶段不确定E类型变量,在定义时是形参,代表的是最终传入的类型;泛型类可以一次有多个类型变量,用逗号分割整个称为ArrayList泛型类型整个ArrayList称为参数化的类型ParameterizedTypeMyArrayList l1=new MyArrayList< >告诉编译

2020-07-30 12:21:52 25

原创 java中的ArrayList和LinkedList

java中的ArrayList构造一个初始容量为10的空列表它具有如下特点:容量不固定,随着容量的增加而动态扩容(阈值基本不会达到)有序集合(插入的顺序==输出的顺序)插入的元素可以为null增删改查效率更高(相对于LinkedList来说)线程不安全java中的ArrayList:add()remove(int index)//删除顺序表中i号位置的元素:将i号位置以后的元素,都向前移动一个元素size()get()isEmpty()Object[] toArray()se

2020-07-30 12:16:26 31

原创 队列

队列:概念:只允许在一端进行插入数据操作(队尾rear),再另一端进行删除(队头front)实现:数组;链表(头插,尾删)特性:先进先出入队列:offer(e)出队列:poll()队首元素:peek()假溢出:不可以添加元素,否组会造成数组越界此时又不应该扩充数组,因为还有大量实际空间并未使用解决假溢出:循环队列数组实现下标移动:如何区满与空;空的循环队列:front=rear满的循环队列:(rear+1)%size=front队列长度:(rear-front+size)%s

2020-07-28 17:41:13 25

原创 测试管理工具---禅道

常用测试管理工具的功能:测试需求用例测试过程bug报表统计权限管理市场所有的测试管理工具:QC/ALM:商业web测试管理工具CQ:商业配置管理工作中的变更管理工具,可用于任务分配、Bug 跟踪、变更管理、流程制定等。JIRA:安装插件试用+商业项目管理工具TestLink:开源:开放源代码专门写测试用例bugzilia:没有测试用例和测试过程的管理tapd:敏捷开发腾讯需求迭代报表wiki:文档管理工具禅道:免费的项目管理工具编程之道 编程之

2020-07-27 09:32:07 19

原创 java异常

异常:程序在运行时的出现错误通知调用者的一种机制运行时:指的是程序已经编译通过得到class文件,再有jvm执行过程中出现的错误防御编程:EAPA:先操作遇到问题在处理LBYL:在操作之前做充分检查异常的核心思想:EAPAtry-catch基本用法:try{有可能出现异常的语句;}catch(异常类型 异常对象){}finally{异常的出口;}注意事项:try代码块中放的是可能出现异常的代码catch放的是出现异常后的处理行为finally用于处理工作,无论是否发生异常,

2020-07-27 09:18:08 12

原创 软件测试的分类

1.按开发阶段划分:1.单元测试:就是针对程序内部的最小模块进行测试单元测试:java Junitc++ gtest阶段:编码后TDD编码前(Test-Driven-Development)测试驱动开发测试对象:最小模块测试人员:白盒测试工程师或开发工程师测试依据:代码注释+详细设计文档测试方法:白盒测试测试内容:模块接口,局部数据结构,路径测试,错误处理,边界测试2.集成测试按照一定的策略将各个模块组合起来,进行测试集成测试也称联合测试(联调)、组装测试,将程序模块采用适当

2020-07-13 12:30:39 23

原创 软件测试和开发的模型

文章目录1.软件开发1.1瀑布模型:1.2螺旋模型:1.3增量模型,迭代模型:1.4敏捷模型(scrum):2.软件测试2.1V模型:2.2w模型(双v模型):1.软件开发生命周期:需求分析,计划,设计,编码,测试,运行维护1.1瀑布模型:优点:–强调开发的阶段性; –强调早期计划及需求调查; –强调产品测试缺点:–风险往往迟至后期的测试阶段才显露,因而失去及早纠正的机会瀑布模型的一个最大缺陷在于,可以运行的产品很迟才能被看到1.2螺旋模型:缺点:对风险管理的技能提出了很高的要求,需要人力

2020-07-13 12:25:08 21

原创 测试用例

文章目录1.什么是测试用例:2. 测试用例的好处?3.基于整体的设计测试用例:4.六大设计用例的方法:1.什么是测试用例:向被测试系统发起的一组操作集合重点:包含测试环境,测试数据,操作步骤,预期结果( 标题,功能模块,前提条件, 重要性)2. 测试用例的好处?可以评估需求的覆盖率可以重复使用(做回归测试的时候)后辈借鉴学习,汲取经验3.基于整体的设计测试用例:基于需求的设计测试用例的方法基于需求设计用例的前提:要保证我们需求的正确性和完整性,逻辑要一致。(验证需求)用户需求和软件需

2020-07-13 12:19:46 29

原创 bug详述

文章目录1.bug的概念:2.如何描述一个BUG3.BUG的生命周期(从BUG创建到BUG关闭,bug所经历的一些状态):4.如果因为一个BUG和开发人员产生冲突,测试人员如何恰当处理?5.如何开始第一次测试6.测试的执行和BUG管理1.bug的概念:当且仅当规格说明书(软件需求说明书)存在并且正确,程序和规格说明书之间不符合,称之为错误当用户的需求存在并且合理,程序没有满足用户的需求,称之为BUG2.如何描述一个BUG2.1描述BUG的要素:测试版本,测试环境,操作步骤,预期结果,实际结果2

2020-07-13 12:16:05 42

原创 测试基础知识

文章目录1. **什么是软件测试?**2.**软件测试分类**3.**软件测试和研发的区别?**4.**测试和调试的区别:**5.**一个优秀的测试人员所具备的素质?(为什么要做软件测试)**1. 什么是软件测试?验证软件功能是否满足用户的需求软件测试最基本的活动就是再找缺陷,也就是bug例如:一场考试,做完一遍之后,进行一遍检查,就是在测试书籍:软件测试艺术2.软件测试分类测试对象:web测试 APP测试 游戏测试 嵌入式测试工程师是否手工:手工 自动化测试分类:功能,性能,安全按级

2020-07-13 11:58:20 42

原创 String,StringBuffer,StringBuilder的区别?

String和StringBuilder及StringBuffer的区别?1.String的拼接会产生临时对象,StringBuilder及StringBuffer不会String的内容不可修改,StringBuffer与StringBuilder的内容可以修改.2.String的拼接会优化为StringBuilder的append()3.StringBuilder及StringBuffer的一些方法是String不具备的StringBuilder及StringBuffer的区别?StringB

2020-07-01 16:25:26 23

原创 测试基础

文章目录什么是软件测试?软件测试分类软件测试和研发的区别?测试和调试的区别:一个优秀的测试人员所具备的素质?(为什么要做软件测试)什么是软件测试?验证软件功能是否满足用户的需求软件测试最基本的活动就是再找bug例如:一场考试,做完一遍之后,进行一遍检查,就是在测试书籍:软件测试艺术软件测试分类测试对象:web测试 APP测试 游戏测试 嵌入式测试工程师是否手工:手工 自动化测试分类:功能,性能,安全按级别:初级,中级,高级,资深,组长,主管,经理,总监软件测试和研发的区别?难易

2020-06-30 21:26:02 44

原创 输出出现次数大于等于n/2的数

public class Test3{ public static void main(String[] args) { Scanner sc=new Scanner(System.in); while (sc.hasNextLine()){ String s=sc.nextLine(); String [] str=s.split(" "); Integer [] arr= new Inte.

2020-06-30 21:22:33 30

原创 最多可以放的蛋糕数

思路:采用数组法,在遍历前4个方块的时候,将他们周围的元素4个方块置位-1;public static int number(int m,int n) { int[][] array = new int[m][n];//数组初始值为0 int count = 0; for (int i = 0; i < m; i++) { for (int j = 0; j < n; j++) { .

2020-06-30 21:19:35 26

原创 接口

文章目录接口:interface注意:优点:一般情况下自动类型进行比较接口:interface接口当中的方法都是抽象的,其实可以有具体实现的方法(JDK1.8加入),这个方法是被default所修饰注意:接口当中定义的成员变量默认为常量默认是:public static final ,成员方法默认:public abstract接口是不可以被实例化接口和类之间的关系:implements为了解决java单继承的问题,一个类可以实现多个接口只要这个类实现该接口,那么你就可以进行向上转型

2020-06-30 21:16:11 22

原创 抽象类

文章目录抽象类1.抽象方法的定义:2.作用:3. 注意:抽象类1.抽象方法的定义:如果一个方法被abstract所修饰,他就是抽象方法没有具体的实现包含抽象方法的类就是抽象类2.作用:就是被继承3. 注意:抽象类不可以被实例化类内的数据成员,和普通类没有区别如果一个类继承了这个抽象类,那么这个必须重写抽象类当中的抽象方法当抽象类A继承了抽象类B,那么抽象类A可以不重写B中的方法,但是一旦A被继承,那么一定要重写这个抽象方法抽象类或者抽象方法不能被private,也不能是final

2020-06-30 21:13:16 21

原创 多态

文章目录1.多态:1.1 什么是多态?1.2多态发生的前提向上转型:重写(复写 覆盖) :override1.3 运行时绑定:(动态绑定)1.4向下转型;2.多态的优点1.多态:1.1 什么是多态?父类引用子类对象父类和子类同名的覆盖方法通过父类引用调用重写的方法的时候,这就是多态多态的核心:类的调用者,不必关心对象的具体类型1.2多态发生的前提向上转型:父类的引用指向子类对象向上转型之后:通过父类的引用,只能访问父类的属性和方法向上转型发生的时机:直接赋值传参返回值重写(复

2020-06-30 21:10:12 15

原创 继承

文章目录继承:**this和super的区别?****访问修饰限定符关键字:****final关键字:**组合:has a继承:具备相同的属性和方法,is-a的关系继承的优点:代码的复用子类/派生类父类/基类/超类子类继承了父类的什么?继承了除父类构造方法之外所有的注意点:对于父类的private的字段和方法,子类是无法访问的java一个子类只能继承一个父类子类在构造的时候,要先帮助父类的构造,父类如果有构造方法,子类要显示调用this和super的区别?this代表当前对象

2020-06-30 21:02:53 14

原创 找到两个链表相交的节点

public static void createCut(Node headA,Node headB){ headA.next=headB.next.next; } //输入两个链表,找到链表相交的节点 public static Node getInterSectionNode(Node headA,Node headB){ Node ps=headA;//默认指向长的单链表 Node pl=headB;//默认指向指向短的单

2020-06-26 18:55:07 33

原创 把两个有序单链表,合并为一个单链表

public static Node mergeTwoLists(Node headA,Node headB){ Node newHead=new Node(-1); Node tmp=newHead; while(headA!=null&&headB!=null){ if(headA.data<headB.data){ tmp.next=headA; .

2020-06-26 18:54:26 22

原创 找到链表环的入口

//找到环的入口 slow=this.head; slow=slow.next; fast=fast.next;public ListNode detectCycle() { ListNode fast = this.head; ListNode slow = this.head; while (fast != null && fast.next != null) { fast = fast.next.next; slow

2020-06-26 18:51:16 38

原创 链表是否有环

//链表是否有环 //走三步,走一步 很慢才能相遇 ,或者永远不相遇 public boolean hasCycle() { Node fast = this.head; Node slow = this.head; while (fast != null && fast.next != null) { //可以快速相遇 fast = fast.next.next;

2020-06-26 18:48:53 11

原创 链表是否是回文

//链表是否是回文 找到链表的中间节点 反转单链表 head从后往后走 slow从后往前走 public boolean chkPalindrome() { if (this.head == null){ return false; } if (this.head.next == null){ return true; } Node fast=this.head;

2020-06-26 18:48:13 16

原创 删除链表中重复的节点

//删除链表中重复的节点 public Node delete(){ Node newHead=new Node(-1); Node tmp=newHead; Node cur=this.head; while(cur!=null) { if (cur.next != null && cur.data == cur.next.data) {

2020-06-26 18:42:25 17

原创 以x为基准,将链表分成两部分,原来的数据顺序不变

/以x为基准,将链表分成两部分,原来的数据顺序不变 public Node partition(int x){ if(head==null){ return null; } Node cur=this.head; Node bs=null; Node be=null; Node as=null; Node ae=null; while(cur!=n

2020-06-26 18:41:50 16

原创 链表中倒数第K个节点

//链表中倒数第K各节点 k的合法性 public Node node(int k){ if(head==null){ return null; } if(k<=0){ System.out.println("K位置不合法"); return null; } Node fast=this.he

2020-06-26 18:40:07 8

原创 返回链表中间节点

//返回链表的中间结点,遍历一遍 public Node midNode(){ Node fast=this.head; Node slow=this.head; while(fast!=null&&fast.next!=null){ fast=fast.next.next; slow=slow.next; } return slow; }

2020-06-26 18:39:17 18

原创 反转单链表

//反转一个单链表 只需遍历一遍 public Node reverse () { Node cur=this.head;//待反转的节点 Node prev=null; Node newHead=null; while(cur!=null){ Node curNext=cur.next; if(curNext==null

2020-06-26 18:38:27 11

原创 链表

链表是一种物理存储结构上非连续存储结构,数据元素的逻辑顺序是通过链表中的引用链接次序实现的 。 //头插法 public void addFirst(int data) { Node node = new Node(data); if (head == null) { head = node; return; } node.next = head; head = n

2020-06-26 18:35:19 15

原创 顺序表

定义:顺序表使用一段物理地址连续的存储单元一次存储数据元素的数据结构分类:静态数据表:使用定长数组存储动态数据表:使用动态开辟的数组存储 public int[] elem; public int usedSize;//有效元素的个数 public static final int capacity=10; MyArrayList(){ this.elem=new int[capacity]; this.usedSize=

2020-06-20 12:08:54 30

原创 web文件的创建及部署

文章目录创建及配置web项目的流程1.POM.XML配置2.项目开发项目部署:web项目运行:启动tomcatweb 项目的使用(访问):创建及配置web项目的流程1.POM.XML配置pom.xml配置2.项目开发右键项目设置,在生成的web中,配置Webapp(web项目的资源文件夹),配置web.xml(web项目的描述文件)项目部署:maven package 命令打包,复...

2020-04-26 15:59:54 44

原创 Maven项目的构建及部署

文章目录Maven项目的标准结构:Maven项目默认的编译路径Maven 的配置:(1)全局配置文件setting.xml:指定本地仓库, 制定远程仓库(2) 项目配置(3)搜索依赖包的过程:(4)Maven的生命周期:maven命令(5)插件Maven项目的标准结构:srcmainjava:项目java源文件路径resources:项目资源文件夹webapp:WEB项目的资源文件夹...

2020-04-26 15:42:37 43

原创 java环境变量的配置

Windows环境变量配置:系统变量中配置:JAVA_HOME:指定为自己jdk根路径CLASS_PATH:.;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar;双击Path,配置jdk命令的路径:...

2020-04-26 15:18:24 35

原创 无缓存交换 java

递归生成格雷码当n=1时,{0,1}当n=2时,{00,01,11,10}当n=3时,{000,001,011,010,110,111,101,100}…n位格雷码共有2^n个元素。其中每个元素是(n-1)位的格雷码前面加0,然后再反向后前面加1生成的。如n=3可由n=2进行两步操作后得到:1.在n=2的格雷码前面加0,生成:000,001,011,0102.在n=2的格雷码逆...

2020-04-22 22:46:41 22

原创 下面那个标识符是合法的? 下面关于java并发的说法正正确的是?

标识符是以字母开头的字母数字序列:数字是指0~9,字母指大小写英文字母、下划线(_)和美元符号($),也可以是Unicode字符集中的字符,如汉字;字母、数字等字符的任意组合,不能包含+、- 等字符;不能使用关键字;大小写敏感;不能是数字开头;A.数字开头*B.有空格C.包含"*"public static void main(String args[]) {Thread t...

2020-04-22 22:15:39 57

原创 二叉搜索树性质及插入,删除,是否存在

二叉搜索树又称二叉排序树,它或者是一颗空树1.性质:若他的左子树不为空,则左子树所有节点的值小于根节点的值若他的右子树不为空,则有字数上所有节点都小于根节点的值它的左右子树也分别为二叉搜索树2.作用:用来进行搜索3.二叉搜索树注意事项:进行中序遍历,可以得到一个有序的序列树中最左侧节点一定是最小的节点,最右侧节点一定是最大的4.常见操作 static class BSTn...

2020-04-22 18:24:16 40

原创 String字符串----字节,字符,字符串的转化

1.字符与字符串String (char[] c ) char[] c=new char[]{ 'a','b','c'}; String str=new String(c);String (char[] c ,int offect,int count ) char[] c=new char[]{ 'a','b','c'}; Strin...

2020-04-22 12:37:25 39

原创 String----创建字符串及常用方法

创建字符串:字符串常量,直接复制,也代表一个对象2.String构造方法:构造对象String(String original)String(char[] value)String( )String(byte[] bytes)String (StringBuffer buffer)String(stringBuilder builder)public String(...

2020-04-22 12:15:26 20

原创 String字符串-----相等比较,画图详解

String str1 = "hello" ;String str2 = "hello" ;String str3 = "hello" ;System.out.println(str1 == str2); // trueSystem.out.println(str1 == str3); // trueSystem.out.println(str2 == str3); //true...

2020-04-22 11:58:59 35

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