自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 微信红包测试用例

2019-10-27 15:46:33 1523

原创 畅聊室思路流程图

2019-10-20 22:53:02 392

原创 剑指offer 二维数组中的查找

题目:在一个二维数组中(每个一维数组的长度相同),每一行都按照从左到右递增的顺序排序,每一列都按照从上到下递增的顺序排序。请完成一个函数,输入这样的一个二维数组和一个整数,判断数组中是否含有该整数。思路:矩阵是有序v的,向下递增,向右递增,如果从左下角来看,向上的数越来越小,向右越来越大,因此,查找一个数,先从左下角比较,如果查找的数比左下角数小时,需要向上移,查找的数比左下角的数大,向右移...

2019-10-06 13:11:59 163

原创 畅聊室测试用例

此测试用例只是对自己做的畅聊室已完成功能部分进行测试,仅供参考

2019-08-24 18:04:54 200

原创 畅聊室

项目介绍:实现一个简单的聊天功能,利用Socket编程,多线程实现客户端的收发信息。项目源码链接下面简单介绍分包1. util将公共方法如加载配置文件,以及后面用到的json字符串的封装到util包中接下来开始写业务,从上到下2. Client 客户端操作2.1 dao包 数据层,表的增删查改BaseDao : 加载数据源,提供连接,关闭,所有和dao相关的类都需要,典型的父类和...

2019-08-24 17:43:22 222

原创 句子逆序

描述:将一个英文语句以单词为单位逆序排放。例如“I am a boy”,逆序排放后为“boy a am I”所有单词之间用一个空格隔开,语句中除了英文字母外,不再包含其他字符输入描述:将一个英文语句以单词为单位逆序排放。输出描述:得到逆序的句子示例1输入I am a boy输出boy a am I将输入的字符串以空格拆分,存放在数组中从数组的最后一个开始取出取出的追...

2019-08-21 17:23:08 288

原创 final, finally, finalize的区别?

final, finally, finalize的区别如下:1. finalfinal用于声明属性、方法和类,分别表示属性不可变、方法不可覆盖和类不可被继承final属性: 被final修饰的变量不可变,,所以变量必须被初始化初始化可通过:(1)在定义时的初始化(2)成员变量可以在初始化块中初始化(但不能在静态初始化块中)(3)静态final成员变量可以在静态初始化块中初始化(但...

2019-08-19 21:26:11 114

原创 Java异常-面试必知

Java异常-面试必知1. 什么是Java中的异常?异常是指程序运行时(非编译时)所发生的非正常情况或错误,当程序违反了语义规则时,JVM就会将出现的错误表示成一个异常抛出,这个异常可以在catch程序中进行捕获,然后进行处理,异常处理的目的就是为了提高程序的安全性与鲁棒性(鲁棒性就是健壮性,在遇到异常还能正常工作,不至于死机)。2. 异常的处理原理是什么?Java语言把异常当作对象来处...

2019-08-18 20:13:29 131

原创 剑指offer 青蛙跳台阶

标题题目:一只青蛙一次可以跳上1级台阶,也可以跳上2级。求该青蛙跳上一个n级的台阶总共有多少种跳法(先后次序不同算不同的结果)。思路:f(1) = 1, f(2) = 2, f(3) = 3, f(4) = 5, 可以总结出f(n) = f(n-1) + f(n-2)的规律,假设现在5个台阶,我们可以从第4跳一步到5,这样的话有多少种方案跳到4就有多少种方案跳到5,另外我们也可以从3跳两步跳...

2019-08-18 15:53:10 100

原创 剑指offer 斐波那契数

大家都知道斐波那契数列,现在要求输入一个整数n,请你输出斐波那契数列的第n项(从0开始,第0项为0)。n<=39fib(1) = 1fib(2) = 1;fib(3) = fib(1)+fib(2);fib(4) = fib(2)+fib(3);fib(n) = fib(n-2)+fib(n-1);public class Solution { public int ...

2019-08-18 15:29:45 155

原创 剑指offer 输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。

输入n个整数,找出其中最小的K个数。例如输入4,5,1,6,2,7,3,8这8个数字,则最小的4个数字是1,2,3,4,。采用冒泡排序思想import java.util.*;public class Solution { public ArrayList<Integer> GetLeastNumbers_Solution(int [] input, int k) { ...

2019-08-17 15:28:23 781

原创 剑指offer -Java 输入一个链表,按链表值从尾到头的顺序返回一个ArrayList

输入一个链表,按链表值从尾到头的顺序返回一个ArrayList。递归思想:public class ListNode { int val; ListNode next = null; ListNode(int val) { this.val = val; } }import java.util.ArrayList;public cl...

2019-08-17 14:50:27 74

原创 单链表OJ面试题(重点)

文章目录OJ面试题1. 删除一个链表所有值为key的节点2. 反转一个单链表3. 找到单链表的中间节点4. 找到单链表的倒数第k个节点5. 合并两个有序链表6. 给定x为基准将链表分割成两部分,所有小于x的节点排在大于等于x的节点之前7. 删除有序链表中重复节点,不保留重复节点,返回头指针8 . 链表的回文结构9. 输入两个链表,找到相交节点10 . 单链表是否有环11. 求链表入环的第一...

2019-08-17 12:33:46 368

原创 单链表的基本操作

单链表基本操作文章目录单链表基本操作1. 创建2. 头插3. 尾插4. 任意位置插入5. 链表中是否有key值6. 删除第一次出现为key的值7. 得到链表长度8. 打印链表9. 销毁链表10. 一个有序链表,删除重复节点1. 创建public class MySingleList { public MySingleList() { this.head = null...

2019-08-17 12:15:16 239

转载 当你在浏览器地址栏输入一个URL后回车,将会发生的事情?

原文:http://igoro.com/archive/what-really-happens-when-you-navigate-to-a-url/作为一个软件开发者,你一定会对网络应用如何工作有一个完整的层次化的认知,同样这里也包括这些应用所用到的技术:像浏览器,HTTP,HTML,网络服务器,需求处理等等。本文将更深入的研究当你输入一个网址的时候,后台到底发生了一件件什么样的事~1. ...

2019-08-16 19:58:51 4022

原创 索引(重点!)

索引特性(重点)索引是什么呢?它可以提高数据库的性能,不用加内存,不用改程序,不用调sql,查询速度提高成百上千倍,所以它的价值在于提高一个海量数据库的检索速度。常见索引:主键索引唯一索引普通索引全文索引案列:创建一个海量数据表查询员工编号为998877的员工 select * from EMP where empno = 998877;如果放在公网中,假如同时...

2019-08-16 19:44:34 100

原创 MySQL事务管理(重点!!!)

标题事务管理(重点)事务就是一组DML语句组成,这些语句在逻辑上存在相关性,这一组DML语句要么全部成功,要么全部失败,是 一个整体。MySQL提供一种机制,保证我们达到这样的效果。事务还规定不同的客户端看到的数据是不相同的。假如 客户端A和客户端B都在卖票,当客户端A检查还有一张票时,将票卖掉,还没有执行更新数据库时,客户端B检查了票数,发现大于0,于是又卖了一次票,然后A将票数更新回数据库...

2019-08-15 21:11:03 120

原创 两个队列实现栈

两个队列实现栈队列先进先出栈先进后出入栈:直接入不为空的队列出栈:queue1,和queue2,每次出不为空的,先将不为空的队列出队列到为空的队列,出size-1个,剩下的一个就是队列的最后一个元素,直接出队,最后一个出队的元素也是最后一个插入的元素,实现了栈的先进后出。具体代码如下: class solution { //两个队列实现栈 private MyQue...

2019-08-08 22:24:24 93

原创 数据库入门

这里我们只讲解工作中用到的基础知识~数据库基础库的操作一、数据库基础1. 什么是数据库存储数据用文件就可以了,为什么要学习数据库呢?因为文件保存数据有以下几个缺点:文件的安全性问题文件不利于数据查询和管理文件不利于存储海量数据文件在程序中控制不方便数据库的存储介质:磁盘内存为了解决文件存储缺点,专家们设计出更加有利于管理数据的东西----数据库2. 基本使用...

2019-08-06 17:56:50 871

原创 Java经典排序 更新ing

一、 插入排序1.基本思想:每一步将一个待排序的元素,按其排序码的大小,插入到前面已经排好序的一组元素的合适位置上去,直到元素全部插完为止。2. 操作步骤3 .算法实现 public static void InsertSort(int[] numbers){ int size = numbers.length; for(int i = 0;i ...

2019-08-05 18:31:17 267

原创 计算机网络总复习

网络重点网络基础应用层传输层什么是客户端,服务器?客户端:主动发起请求的一方。服务器:被动接收请求的一方。封装:上层协议将数据交给下层协议,打上包装分用:下层协议将数据部分解析出来,交给上层协议一般而言对于一台主机, 它的操作系统内核实现了从传输层到物理层的内容;对于一台路由器, 它实现了从网络层到物理层;对于一台交换机, 它实现了从数据链路层到物理层;对...

2019-07-30 17:42:48 1714

原创 动态规划实现经典算法Java--持续更新

Dynamic ProgrammingDP定义:动态规划是分治思想的延伸,通俗一点来说就是大事化小,小事化无的艺术。在将大问题化解为小问题的分治过程中,保存对这些小问题已经处理好的结果,并供后面处理更大规模的问题时直接 使用这些结果。动态规划具备了以下三个特点把原来的问题分解成了几个相似的子问题。所有的子问题都只需要解决一次。储存子问题的解。动态规划的本质,是对问题状态的定义和状...

2019-07-23 11:47:40 695

原创 给你一个app如何测试?面试题

1. 安装卸载安装卸载路径是否能自己选择,在不同操作系统下(Android、ios)安装是否正常,能正常运行,安装的文件及文件夹是否写入了指定的目录里,安装来自不同来源的(应用宝、360助手)下是否正常。卸载是否删除所有相关的文件2.功能测试运行、应用的前后台切换、免登录、数据更新、离线浏览、App更新、定位、启动相机服务。。根据软件说明看看提供的功能是否能正确并如设计的一样正常运作。3...

2019-07-22 18:19:34 5060

原创 自动化测试入门必看

目标什么是自动化测试如何实施自动化测试发展方向什么时Selenium IDE录制脚本1. 什么是自动化测试自动化测试介绍自动化测试是把以人为驱动的测试行为转化为机器执行的过程, 通常在设计了测试用例并通过评审之后,由测试人员根据测试用例中描述的规程一步步执行测试,得到结果与期望结果的比较,在此过程中,为了节省人力、时间或硬件资源,提高测试效率,便引入了自动化测试常见的自动化测试...

2019-04-20 18:30:57 292

原创 牛客网 说反话

给定一句英语,要求你编写程序,将句中所有单词的顺序颠倒输出。输入描述测试输入包含一个测试用例,在一行内给出总长度不超过80的字符串。字符串由若干单词和若干空格组成,其中单词是由英文字母(大小写有区分)组成的字符串,单词之间用1个空格分开,输入保证句子末尾没有多余的空格。输出描述每个测试用例的输出占一行,输出倒序后的句子。示例:输入 Hello World Here I C...

2019-04-10 18:49:18 185

原创 HTTP常见状态码

HTTP状态码表示HTTP协议所返回的响应的状态1. 最基本的状态码200(“ok”) 表示从客户端发来的请求在服务器端被正确处理302(“Redirect”) 临时性重定向,表示资源临时被分配了新的 URL500(“Bad Request”) 表示服务器端在执行请求时发生了错误403(“Forbidden”) 表示对请求资源的访问被服务器拒绝404(“Not Found”...

2019-04-10 17:28:53 85

原创 Java单例设计模式

一、 概念:所谓的单例设计指的是一个类只允许产生一个实例化对象。二. 单例设计模式特点:1. 单例类只能有一个实例。2. 单例类必须自己创建自己的唯一实例。3. 单例类必须给所有其他对象提供这一实例。对于单例设计模式也有两类形式:懒汉式、饿汉式。三、实现单例设计饿汉式单例特点:饿汉式单例在类加载初始化时就创建好一个静态的对象供外部使用,除非系统重启,这个对象不会改变,所以本身就是...

2019-02-21 17:14:19 118

原创 快乐数

题目描述:编写一个算法来判断一个数是不是“快乐数”。一个“快乐数”定义为:对于一个正整数,每一次将该数替换为它每个位置上的数字的平方和,然后重复这个过程直到这个数变为 1,也可能是无限循环但始终变不到 1。如果可以变为 1,那么这个数就是快乐数。示例:输入: 19 输出: true思路:一般这种算法题都是有一定技巧规律的,先耐心写几个数试着算一下。就拿这道题来说,我们先随意拿几个数来举...

2018-11-22 14:11:28 140

原创 写两个线程,一个线程打印 1~52,另一个线程打印A~Z, 打印顺序是12A34B...5152Z;

写两个线程,一个线程打印 1-52,另一个线程打印A~Z,打印顺序是12A34B…5152Z;需要用到线程通信我们用flag表示class Print{ private int flag = 1; // 线程通信标记 private int count = 1; // 打印数字线程 public synchronized void printNum(){ ...

2018-11-19 20:23:54 881

原创 JavaSE----之三个特殊的类

JavaSE----之三个特殊的类String 类Object类包装类1. java . lang.String 类1.1 String 类的两种实例化方式直接赋值(在堆上分配空间)String str = “hello”; //str 是一个对象,指向堆内存“hello”String 本身是一个类,因此存在构造方法,如下:public String(Strin...

2018-11-10 23:48:26 157

原创 经典算法猴子吃桃子问题

题目:猴子第一天吃了若干个桃子,当即吃了一半,还不解馋,又多吃了一个; 第二天,吃剩下的桃子的一半,还不过瘾,又多吃了一个;以后每天都吃前一天剩下的一半多一个,到第10天想再吃时,只剩下一个桃子了。问第一天共吃了多少个桃子?思路:我们可以采用逆向思维,第十天剩一个,前一天则为 S9 = (S10 +1)*2,以此推算前一天。可以采用递归(下面介绍三种方法)Day1...

2018-11-10 21:48:24 34342 6

原创 final 关键字

final 关键字-终结者在java中final 被称为终结者,可以使用final 来定义类、方法、属性。1.final修饰类(String 类以及8大基本数据类型的包装类,Integer)(不能继承)当一个类被final修饰,表示该类不能拥有子类(该类不允许被继承)。一旦一个类被final修饰,该类的所有方法都会默认加上final (成员变量不会加final)2 final 修饰...

2018-10-20 19:08:43 103

原创 内部类定义与使用

内部类的定义与使用:在类内部进行其他类结构嵌套操作首先我们来看一段内部内的代码结构,观察内部类的简单使用class Outter{ private String msg = "Outter中的字符串"; //----------------------------------------------------------- //内部类 class Inner{...

2018-10-20 18:47:19 818

原创 Linux基础命令、权限及重要目录。

Linux基本命令一、 Linux的命令操作(最常用):命令的使用结构命令名称 [操作选项] [操作源对象] [操作目标对象]1. 对目录进行操作(目录== 文件夹)ls : 查看目录下的内容 / 查看根目录下的所有目录 -a 查看隐藏文件 linux 下以 . 开头的文...

2018-09-24 23:01:54 171

原创 栈和队列面试题

经典栈和队列相关面试题1.实现一个栈,要求实现Push(出栈)、Pop(入栈)、Min(返回最小值)的时间复杂度为O(1)思路分析:入栈:将数据压入数据栈中,更新Min栈:data&lt;=Min栈栈顶,data压入 Min栈出栈:检测data栈与Min栈栈顶的元素 代码如下:typedef struct MinStack{ Stack...

2018-08-28 14:19:32 105

原创 自定义类型知识点

知识点: 结构体类型创建 结构体初始化 结构体内存对齐 位段,位段计算机大小 枚举+联合1.结构体类型的创建结构体是一些值得集合,这些值称为成员变量, 结构体的每个成员可以是不同类型的变量。 例如描述一个学生struct Stu{ char name[20]; //姓名 int age; //年龄 ...

2018-08-27 14:26:50 133

原创 经典面试题二分查找算法

题目:写一个函数,实现一个整形有序数组的二分查找分析: 二分查找的思路就是折半查找,要有左边界与右边界,我们才能确定中间元素,当左边界与右边界重合的时候,这时查找对象就变为一个元素,若它不是要查找的元素,那么所查找的元素便不再数组中。这样我们就清楚地定义出所需参数,以及退出条件。我们需要一个左边界,一个右边界,还有中间元素,若左边界大于右边界,退出循环。若找到,则返回元素所在...

2018-05-31 19:20:30 2635

原创 百度面试题:大小端介绍

什么是大端、小端? 大端(存储)模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中; 大端(存储)模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中。为什么有大端和小端: 在计算机系统中,我们以字节为单位,每个地址单元都对应着一个字节,一个字节为8位,但是在c语言中除了8位的char之外,还有16位的short型,32...

2018-05-22 23:32:47 348

原创 c语言模拟实现strncpy、strncat、strncmp函数

题目c语言模拟实现strncpy、strncat、strncmp函数分析strncpy、strncat、strncmp函数与strcpy、strcat、strcmp函数非常相近,但是在str…函数里,它是用依据 \0 作为结束判断的,在一些情况下这是不安全,比如在strcat函数,我们给arr追加arr时,程序就会崩溃,所以用自身的长度来作为循环停止条件是不安全的。 于是就出现了一群...

2018-05-20 11:48:16 309

原创 理解指针数组 、数组指针、函数指针、函数指针数组、指向函数指针数组的指针

对于指针数组 数组指针 函数指针 函数指针数组 指向函数指针数组的指针的简单理解指针是c语言的精华,相当重要。1. 指针数组 &amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;&amp;amp;nbsp;首先他是一个数组,数组的元素都是指针,数组占多少个字节由数组本身决定。它是“储存指针的数组”的简称。举个栗子int *p1[10] ; //指针所指向的类型是int char ...

2018-05-15 20:05:35 150

空空如也

空空如也

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

TA关注的人

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