自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 学生信息管理测试报告

1. 项目背景 学生信息管理系统主要实现的业务为管理学生的信息,并记录管理学生的班级和入学日期等。通过用户登录,可以进行对相应班级的学生信息进行新增、删除、修改、查询操作。 2. 测试概要 分别进行图片中的测试。 1. 登录功能 没有Bug产生 2. 学生信息显示功能 无Bug产生 3.学生信息查询功能 无Bug产生,通过该功能测试,在后期可进行其他标题的查询方式,增加功能便捷程度。 4. 学生信息增加功能 ...

2020-09-05 10:53:00 3799

原创 归并排序

public class 归并排序 { public static void mereSorInt(int[] array, int low, int high) { if (low >= high) { return; } //分解 int mid = (low + high) >>> 1; mereSorInt(array, low, mid);//分割成一个元素

2020-08-05 08:19:55 221

原创 静态内部类和非静态内部类的区别

一、非静态内部类: 1、变量和方法不能声明为静态的。(类的编译顺序:外部类–静态方法或属性–内部类) 2、实例化的时候需要依附在外部类上面。比如:B是A的非静态内部类,实例化B,则:A.B b = new A().new B(); 3、内部类可以引用外部类的静态或者非静态属性或者方法。 二、静态内部类: 1、属性和方法可以声明为静态的或者非静态的。 2、实例化静态内部类:比如:B是A的静态内部类,A.B b = new A.B(); 3、内部类只能引用外部类的静态的属性或者方法。 4、如果属性或者方法声明为

2020-08-04 07:32:48 394

原创 快速排序及其优化

//时间复杂度:O(n^2) //空间复杂度O(nlog n) //不稳定 public class 快速排序 { public static int partition(int[] array, int low, int high) { int tmp = array[low]; while (low < high) { // 当队尾的元素大于等于基准数据时,向前挪动high指针 while (low <

2020-08-01 08:17:58 186

原创 冒泡排序

public class 冒泡排序 { //时间复杂度 O(n^2) //空间复杂度O(1) //稳定 public static void func(int[] array) { for (int i = 0; i < array.length; i++) {//总共比较的次数 boolean flag = false; for (int j = 0; j < array.length - 1 -

2020-07-30 16:19:55 152

原创 选择排序

//时间复杂度:O(n^2) //空间复杂度:O(1) //不稳定 public class 希尔排序 { public static void shellSort(int[] array) { int[] drr = {5, 3, 1}; for (int i = 0; i < drr.length; i++) { shell(array, drr[i]);//分组进行插入排序 } } //即插入排序的

2020-07-30 15:57:49 149

原创 希尔排序

//时间复杂度 O(n^2) //空间复杂度O(1) public class 希尔排序 { public static void shellSort(int[] array) { int[] drr = {5, 3, 1}; for (int i = 0; i < drr.length; i++) { shell(array, drr[i]);//分组进行插入排序 } } //即插入排序的思想

2020-07-29 21:05:50 135

原创 插入排序

//稳定 //时间复杂度: 空间复杂度:O(1) //最好:O(n) //最坏:O(n^2) public class 插入排序 { public static void func(int[] array) { int tmp = array[0]; for (int i = 1; i < array.length; i++) { tmp = array[i]; int j;

2020-07-28 22:09:51 133

转载 float和double的区别

1、C中float和double的区别 float:单精度类型,最多可以精确到小数点为7位,占用内存为4字节,占用内存的消耗速度为double的一半 double:双精度类型,最多可以精确到小数点为16位,占用内存为8字节,占用内存的消耗速度为float的两倍 一般来说,CPU处理单精度浮点数的速度比处理双精度浮点数快。 参考博客:https://www.cnblogs.com/liutianci/p/8443372.html ...

2020-07-23 16:51:23 1097 1

转载 简述TCP三次握手和四次挥手过程

TCP握手协议 在TCP/IP协议中,TCP协议提供可靠的连接服务,采用三次握手建立一个连接.第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并进入SYN_SEND状态,等待服务器确认; SYN:同步序列编号(Synchronize Sequence Numbers)第二次握手:服务...

2020-07-16 16:53:24 926

原创 HTTPS和HTTP的区别

HTTPS和HTTP的区别主要如下: 1、https协议需要到ca申请证书,一般免费证书较少,因而需要一定费用。 2、http是超文本传输协议,信息是明文传输,https则是具有安全性的ssl加密传输协议。 3、http和https使用的是完全不同的连接方式,用的端口也不一样,前者是80,后者是443。 4、http的连接很简单,是无状态的;HTTPS协议是由SSL+HTTP协议构建的可进行加密传输、身份认证的网络协议,比http协议安全。 客户端在使用HTTPS方式与web服务器通信时有以下几个步骤: (

2020-07-11 22:20:30 215

原创 Cookie和Session的区别

1、cookie数据存放在客户的浏览器上,session数据放在服务器上。 2、cookie不是很安全,别人可以分析存放在本地的COOKIE并进行COOKIE欺骗 考虑到安全应当使用session。 3、session会在一定时间内保存在服务器上。当访问增多,会比较占用你服务器的性能 考虑到减轻服务器性能方面,应当使用COOKIE。 4、单个cookie保存的数据不能超过4K,很多浏览器都限制一个站点最多保存20个cookie。 ...

2020-07-11 17:27:54 158

原创 .线程和进程的区别

进程 进程是一个具有一定独立功能的程序在一个数据集上的一次动态执行的过程,是操作系统进行资源分配和调度的一个独立单位,是应用程序运行的载体。进程是一种抽象的概念,从来没有统一的标准定义。进程一般由程序,数据集合和进程控制块三部分组成。 程序用于描述进程要完成的功能,是控制进程执行的指令集;数据集合是程序在执行时所需要的数据和工作区;程序控制块包含进程的描述信息和控制信息是进程存在的唯一标志。 进程具有的特征: 动态性:进程是程序的一次执行过程,是临时的,有生命期的,是动态产生,动态消亡的; 并发性:任何进程

2020-07-09 16:03:10 225

原创 ArrayList、LinkedList、HashSet、HashMap底层内部数据结构

一、ArrayList ArrayList的底层数据结构就是一个数组,数组元素的类型为Object类型,对ArrayList的所有操作底层都是基于数组的。 二、LinkedList Java中的LinkedList类实现了List接口和Deque接口,是一种链表类型的数据结构,支持高效的插入和删除操作,同时也实现了Deque接口,使得LinkedList类也具有队列的特性。LinkedList类的底层实现的数据结构是一个双端的链表。 LinkedList类中有一个内部私有类Node,这个类就代表双端链表的节

2020-07-09 14:43:42 1271

原创 Java习题8

下面的程序 编译运行后,在屏幕上显示的结果是(A) public class test { public static void main(String args[]) { int x,y; x=5>>2; y=x>>>2; System.out.println(y); } } A、 0 B 、2 C 、5 D 、80 解析: Java中的位运算符: **> >**表示右移,如果该数为正,则高位补0,若为负数,则高位补1。 **>>>**表示.

2020-06-18 16:36:02 438

原创 线程安全

线程 线程状态转移图 什么是线程安全? 程序运行的结果完全符合预期,不会出现有时正确,有时错误。即(消除随机性并且正确) 线程不安全的原因是什么? Java中的语句,对应不一定是一条字节码文件,更不一定是一条CPU指令 线程调度中有随机性存在。什么时候从 CPU上被调度下来 以及什么时候被调度回CPU上 什么情况会出现线程不安全? 1. 线程之间有共享的数据。即线程之间不存在共享,天生是线程安全的。 2. 即使线程之间有共享,但没有线程修改共享数据,则天生是线程安全的。 JVM的运

2020-06-17 20:54:34 214

原创 Java习题7

下列与队列结构有关联的是(D) A、 函数的递归调用 B 、数组元素的引用 C 、多重循环的执行 D、先到先服务的作业调度 解析: 主要在于使用LinkedList模拟队列和堆栈的存储方式。 ① 队列数据结构的存储特点:先进先出~ 方法: offer()、poll() ② 堆栈数据结构的存储特点:先进后出~ 方法: push()、pop() 下面属于黑盒测试方法的是(C) A 、语句覆盖 B 、逻辑覆盖 C 、边界值分析 D 、路径覆盖 解析: 黑盒测试包含:等价类划分、边界值分析、因果图分析、错误.

2020-06-11 15:06:59 379

原创 Java习题6

以下代码运行输出的是(C) public class Person{ private String name = "Person"; int age=0; } public class Child extends Person{ public String grade; public static void main(String[] args){ Person p = new Child(); System.out.println(p.name); } } A、 输出:Person B 、没有输出 .

2020-06-07 18:12:11 620

原创 Java习题5

A 派生出子类 B , B 派生出子类 C ,并且在 java 源代码有如下声明: A a0=new A(); A a1=new B(); A a2=new C(); 问以下哪个说法是正确的?(D) A 、只有第一行能通过编译 B 、第1、2行能通过编译,但第3行编译出错 C 、第1、2、3行能通过编译,但第2、3行运行时出错 D 、第1行,第2行和第3行的声明都是正确的 解析: 下面代码将输出什么内容:(B) public class SystemUtil{ public static bool.

2020-06-05 15:14:33 4203

原创 Java习题0604

执行如下程序,输出结果是( C) class Test { private int data; int result = 0; public void m() { result += 2; data += 2; System.out.print(result + " " + data); } } class ThreadExample extends Thread { private Test mv; public ThreadExample(Test mv) { this.mv.

2020-06-04 14:38:55 400

原创 java优先队列

优先级队列是每次从队列中取出的是具有最高优先权的元素。    PriorityQueue是从JDK1.5开始提供的新的数据结构接口。 如果不提供Comparator的话,优先队列中元素默认按自然顺序排列(升序),也就是数字默认是小的在队列头,字符串则按字典序排列。 如果想实现按照自己的意愿进行优先级排列的队列的话,需要实现Comparator接口。下面的方法,实现了根据某个变量,来进行优先级队列的建立。 public static void main(String args[]){ Queu

2020-05-25 15:30:12 365

原创 Java基础-数据类型

1.整型变量 int 变量名=初始值 //示例 int num = 10; System.out.println(num); 1.int表示变量的类型是一个整型 2.在java中,一个int变量占4个字节。 3.int 的范围: -2^31 -> 2^31-1 , 也就大概是 -21亿 到 +21亿. 2.长整型变量 long 变量名 =初始值; //示例 long num = 10L...

2020-04-09 12:13:08 131

原创 排雷

game.c #define _CRT_SECURE_NO_WARNINGS 1 #include "game.h" void InitBoard(char board[ROWS][COLS], int rows, int cols, char set) { int i = 0; int j = 0; for (i = 0; i < rows; i++) { for (j = ...

2020-03-28 16:36:02 130

原创 C基础3.24

1.自定义函数 ret_type(返回类型) fun_name(函数名)(paral,*)(函数参数) { statement;(函数体) } 实际参数 真实传给函数的参数,叫实参。实参可以是:常量、变量、表达式、函数等。无论实参是何种类 型的量,在进行函数调用时,它们都必须有确定的值,以便把这些值传送给形参。 形式参数 形式参数是指函数名后括号中的变量,因为形式参数只有在函数被调用的过程中...

2020-03-25 13:10:14 181

原创 C基础3.18

分支语句和循环语句 1.if 分支语句 0表示假,非0表示真 if(表达式) { 语句; } esle if(表达式) { 语句; } 2.switch 语句 switch(整型表达式) { case 整型常量表达式; 语句; } 在switch语句中需要使用 break 实现分支,若在case后没有用break,则会继续执行下面的case,直到break。 当多个case输出...

2020-03-19 21:31:45 124

原创 C基础3.15

条件操作符(三目操作符) epx1?exp2:exp3//用于判断 int main(){ //epx1 ? exp2:exp3 int a = 10; int b = 20; int max = 0; max = a > b ? a : b; printf("%d\n", max); return 0; } typedef类型重定义 typedef unsigned...

2020-03-15 17:18:07 302

原创 C基础 3.14

1. 常量分类 字面常量 (无法改变) 3.14; 1000;//均是字面常量 const修饰的常态变量(无法改变,虽然修饰了,但依旧是变量) const int c = 20; printf("c=%d\n", c); 3.#define 定义的标识符常量 (在最开始定义) #define MAX 1000 4.枚举常量(也是在最初开始定义) //性别 //创建一个性别枚举类型 en...

2020-03-14 12:13:37 490

原创 C基础 3.11

C语言基础学习(3.11) 每种类型的内存大小 /* 1byte=8bit */ #include <stdio.h> int main() { printf("%d\n", sizeof(char)); //1byte 字符数据类型 printf("%d\n", sizeof(short)); //2byte 短整型 printf("...

2020-03-12 11:19:26 146

空空如也

空空如也

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

TA关注的人

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