自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

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

原创 Spring(1)

IOC invert of control 控制反转DI dependency injection 依赖注入IOC容器 管理对象,及管理对象的依赖Servlet{service s = new service();}service{Dao dao = new Dao();}Dao{SqlSessionFactory ssf;Sql

2017-09-13 22:08:10 184

原创 MyBaties

MyBaties是一个简化和实现了Jaca数据久化层的开源框架1、jdbc的问题,为什么需要持久层框架,为什么选择呢MyBatiesa、不够面向对象,是面向行/列 结果转对象的过程非常的繁琐b、ORM 对象(java对象)关系(表)映射按照操作对象或集合的操作方法来完成持久化目的,orm框架基于数据库和Eclipse基础之间ORM是一种为了解决面向对象与关系数据库存在的

2017-09-13 22:07:01 518

转载 哈夫曼树

哈夫曼树二,如何构建哈夫曼树一般可以按下面步骤构建:1,将所有左,右子树都为空的作为根节点。2,在森林中选出两棵根节点的权值最小的树作为一棵新树的左,右子树,且置新树的附加根节点的权值为其左,右子树上根节点的权值之和。注意,左子树的权值应小于右子树的权值。3,从森林中删除这两棵树,同时把新树加入到森林中。4,重复2,3步骤,直到森林中只有一棵树为止,此树便是哈夫曼树。下

2017-09-13 22:02:20 391

转载 事务的四大特性

http://blog.csdn.net/chosen0ne/事务是指对系统进行的一组操作,为了保证系统的完整性,事务需要具有ACID特性,具体如下:1. 原子性(Atomic)     一个事务包含多个操作,这些操作要么全部执行,要么全都不执行。实现事务的原子性,要支持回滚操作,在某个操作失败后,回滚到事务执行之前的状态。     回滚实际上是一个比较高层抽象的概念,大多数DB在

2017-09-13 22:01:23 254

原创 多线程和并发编程

基础http://blog.csdn.net/evankaka/article/details/44153709进阶http://www.cnblogs.com/duyinqiang/p/5360931.html超神http://ifeve.com/talk-concurrency/读书三遍1、标记名词,理解概念 建立对概念的基本认知2、了解知识层次,递进关

2017-09-13 22:00:57 277

转载 字符串排序组合

字符串”qiniu”根据顺序不同有多少种排列组合的方式?方法有很多种,举以下几种方法方法一首先确定两个“ i ” 的位置,也就是C52 也就是5 * 4 / 2 = 10种方法然后对剩下的三个数进行排序3! = 6种所以一种 6 * 10 = 60 种方法方法二首先考虑i的排序方法方法一:两个i放在一起 A(4,4)也就是有 24 种方法方法二:两个方法

2017-09-13 22:00:36 323

转载 垃圾回收机制之触发Full GC的情况

垃圾回收机制之触发Full GC的情况1,新生代:(1)所有对象创建在新生代的Eden区,当Eden区满后触发新生代的Minor GC,将Eden区和非空闲Survivor区存活的对象复制到另外一个空闲的Survivor区中。(2)保证一个Survivor区是空的,新生代Minor GC就是在两个Survivor区之间相互复制存活对象,直到Survivor区满为止。2,老年代:当Survi

2017-09-13 21:58:44 1177

转载 java垃圾回收机制

123456static String str0="0123456789";static String str1="0123456789";String str2=str1.substring(5);String str3=new String(str2);String str4=new String(str3.toCharArray());str0

2017-09-13 21:57:52 288

原创 关于继承的一点小东西

观察以下代码:123456789101112131415161718class Car extends Vehicle{public static void main (String[] args){new Car(). run();}private final

2017-09-13 21:55:54 231

原创 多态

下列程序执行后结果为( )123456789101112131415161718class A {public int func1(int a, int b) {return a - b;}}class B extends A {public int func1(int

2017-09-13 21:55:14 321

原创 关键字

java中true ,false , null在java中不是关键字,也不是保留字,它们只是显式常量值,但是你在程序中不能使用它们作为标识符。其中const和goto是java的保留字。java中所有的关键字都是小写的,还有要注意true,false,null, friendly,sizeof不是java的关键字,但是你不能把它们作为java标识符用。

2017-09-11 12:29:39 147

原创 排序算法的复杂度及不稳定性

排序算法不稳定速记:快 shell 选 堆(快些选对)不稳定稳定的意思是排序队列对算法是否有影响元素的移动次数与关键字的初始排列次序无关的是:基数排序元素的比较次数与初始序列无关是:选择排序算法的时间复杂度与初始序列无关的是:直接选择排序

2017-09-11 12:27:33 247

转载 next数组

已知串S=′aaab′,其Next数组值为()正确答案: A0123112312311211next数组的求解方法是:第一位的next值为0,第二位的next值为1,后面求解每一位的next值时,根据前一位进行比较。首先将前一位与其next值对应的内容进行比较,如果相等,则该位的next值就是前一位的next值加上1;如果不等,向前继续寻找next值对应的内容来与前一位

2017-09-11 12:26:12 2729 1

转载 模式匹配之(BF KMP算法)

BF算法    我们先来看BF算法(Brute-Force,最基本的字符串匹配算法),BF算法的实现思想很简单:我们可以定义两个索引值i和j,分别指示主串Tag和子串Ptn当前正待比较的字符位置,从主串Tag的第pos个字符起和子串Ptn的第一个字符比较,若相等,则继续逐个比较后续字符,否则从主串Tag的下一个字符起再重新和子串Ptn的字符进行比较,重复执行,直到子串Ptn中的每个字符依次和主

2017-09-11 12:24:23 264

转载 抽象类和接口

链接:https://www.nowcoder.com/questionTerminal/76a029a6196c488699c2f27c10b76c09来源:牛客网含有abstract修饰符的class即为抽象类,abstract类不能创建的实例对象。含有abstract方法的类必须定义为abstract class,abstract class类中的方法不必是抽象的。abstr

2017-09-11 12:23:54 120

原创 Math ceil()、floor()、round()方法

功能:对一个数进行上取整。语法:Math.ceil(x)参数:x:一个数值。返回值:返回大于或等于x,并且与之最接近的整数。注:如果x是正数,则把小数“入”;如果x是负数,则把小数“舍”。功能:对一个数进行下取整。语法:Math.floor(x)参数:x:一个数值。返回值:返回小于或等于x,并且与之最接近的整数。注:如果x是正数,

2017-09-11 12:23:27 144

转载 volatile的措施

所谓 volatile的措施,就是1. 每次从内存中取值,不从缓存中什么的拿值。这就保证了用 volatile修饰的共享变量,每次的更新对于其他线程都是可见的。2. volatile保证了其他线程的立即可见性,就没有保证原子性。3.由于有些时候对 volatile的操作,不会被保存,说明不会造成阻塞。不可用与多线程环境下的计数器。

2017-09-11 12:22:54 99

转载 java中的多线程中wait和sleep方法的区别

Java中的多线程是一种抢占式的机制,而不是分时机制。抢占式的机制是有多个线程处于可运行状态,但是只有一个线程在运行。 共同点 : 1. 他们都是在多线程的环境下,都可以在程序的调用处阻塞指定的毫秒数,并返回。 2. wait()和sleep()都可以通过interrupt()方法 打断线程的暂停状态 ,从而使线程立刻抛出InterruptedException。 如果线程A希望立

2017-09-11 12:22:09 236

转载 访问修饰符(一)

类定义前面可以修饰public,protected和private内部类前面可以修饰public,protected和private局部内部类前面可以修饰public,protected和private以上说法都不正确外部类与内部类1、对于外部类而言,它也可以使用访问控制符修饰,单外部类只能有两种访问修饰级别,public和默认,因为外部类没有处于任何类

2017-09-11 12:21:38 346

原创 反射的学习笔记

1、第一个要了解的是Class类型,它是类的类------代表了一个类的元数据2、一个Class实例,是虚拟机在加载一个类的时候自动产生的3、我们至少有三种方法来获取这个实例3.1类型.class3.2obj.getClass();//obj是具体类型的实例3.3Class.froName(“类的全限定名字符串”);//包含包名前两者都需要该类型已经被加载第三种会触

2017-09-11 12:19:11 125

原创 Servlet+JSP学习笔记

1、 jsp有哪些内置对象,其Java类型是什么,作用分别是什么?request:HttpServletRequestsession:HttpSessionapplication:ServletContext response:HttpServletResponseout:PrintWriter = response.getWriter(); page:this

2017-08-28 15:32:50 193

原创 单线程的小爬虫

package com.spider;import java.io.BufferedReader;import java.io.IOException;import java.io.InputStream;import java.io.InputStreamReader;import java.net.HttpURLConnection;import java.net.Malform

2017-08-20 16:05:42 139

原创 基于NIO和多线程的网络多客户聊天室

聊天室服务器package com.charroomserver;import java.io.IOException;import java.net.InetSocketAddress;import java.nio.ByteBuffer;import java.nio.channels.Channel;import java.nio.channels.SelectionKey;i

2017-08-19 17:27:03 356

原创 Uncaught TypeError: window.showModalDialog is not a function

编程的时候遇到也就是提示我们说showModalDialog 不是一个function,错的莫名其妙,其实原因是Chrome不支持这个函数,换一个浏览器就可以了,比如IE

2017-08-16 16:33:24 2174

转载 System.arraycopy()实现数组之间的复制

System提供了一个静态方法arraycopy(),我们可以使用它来实现数组之间的复制。其函数原型是:public static void arraycopy(Object src, int srcPos, Object dest,

2017-08-10 21:05:46 229

原创 java中==和equals的区别

1、基本数据类型只能用==比较,使用equals比较会报错在基本数据类型中==比较的是值是否相同2、对于基本数据类型的包装类型,==比较的是地址,equals比较的是内容3、对于字符串==比较的是地址,equals比较的是内容注:String s1 = "123"; String s2 = "123"; System.out.println(s1 == s2);//(1

2017-08-10 21:03:26 105

原创 包装类

Java 语言用以下哪个类来把基本类型数据转换为对象()正确答案: A   你的答案: D (错误)包装ClassMathObjectJava的数据类型分为两类,基本数据类型以及引用数据类型;基本数据类型,只能保存一些常量数据,引用类型除了可以保存数据,还能提供操作这些数据的功能。为了操作基本数据类型的数据,Java对它们进行了封装byte Byte

2017-08-10 21:02:35 136

转载 面向对象六大基本原则、设计模式、工程模式

面向对象六大基本原则以前一直认为程序中的类有使用到封装继承多态就是面向对象设计,其实不然封装,继承,多态只是面向对象的三大特性,但是在设计程序的时候并不是说类的结构使用到了(或是体现出了)这三个特性就是面向对象,其实真正的面向对象设计是要符合下面的五大原则,面向对象的六大基本原则开放封闭原则(OCP) 单一职责原则(SRP)接口隔离原则(ISP)里氏替换

2017-08-10 21:01:55 404

原创 设计模式课堂小笔记

设计目标:高内聚 低耦合先天条件:继承,封装,多态为了更好的实现目标:手段与方法论1.开闭 控制2.单一3.接口最小原则 /接口隔离原则4.依赖倒置5.里氏替换6.最小知道--封装为什么要有,原则和模式————软件的需求在经常改变,软件需要稳定的运行,稳定和变化是矛盾的。面向接口编程的最实用,最简单的设计模式最常用的是:单利和工厂(掌握)

2017-08-10 20:59:49 134

转载 森林和二叉树的转化

http://www.cnblogs.com/zhuyf87/archive/2012/11/04/2753950.html详解地址将一个森林转化为二叉树,森林也就是非二叉树,父节点下不止有两个子节点转化步骤1.在所有兄弟节点之间加一条线。2.将除了左孩子之外的线全部去除3.以根节点为轴心,顺时针旋转(注意第一个孩子是节点的左孩子,兄弟转换过来的

2017-08-10 20:56:57 385

原创 关于双链表的搜索速度问题

如果表是无序的,那么双向搜索的速度和单向搜索的速度是一样的。如果是有序的,那么双向搜索的速度更快。因此双向搜索更稳定,方差更小

2017-08-10 20:22:05 1240

原创 字符串排序组合 字符串”qiniu”根据顺序不同有多少种排列组合的方式?

字符串”qiniu”根据顺序不同有多少种排列组合的方式?方法有很多种,举以下几种方法方法一首先确定两个“ i ” 的位置,也就是C52 也就是5 * 4 / 2 = 10种方法然后对剩下的三个数进行排序3! = 6种所以一种 6 * 10 = 60 种方法方法二首先考虑i的排序方法方法一:两个i放在一起 A(4,4)也就是有 24 种方法方法二:两个方法

2017-08-10 20:20:15 1058

原创 树的遍历(中序、先序、后续)

先序遍历也叫做先根遍历、前序遍历,可记做根左右(二叉树父结点向下先左后右)。首先访问根结点然后遍历左子树,最后遍历右子树。在遍历左、右子树时,仍然先访问根结点,然后遍历左子树,最后遍历右子树,如果二叉树为空则返回。例如上树的遍历顺序是A BD E C F中序遍历(LDR)是二叉树遍历的一种,也叫做中根遍历、中序周游。在二叉树中,先左后根再右。巧记:左

2017-08-10 20:13:08 398

原创 快速排序法排序

A{21,25,5,17,9,23,30}B{25,23,30,17,21,5,9}C{21,9,17,30,25,23,5}D{5,9,17,21,23,25,30}使用快速排序法对以上三个选项进行排序。首先知道,在有序情况下快排的速度是最慢的。排除D选项其次Index的值越中间,也就是两边的长度越接近越快,所以排除B最后第一次排序后A 9 17 5/C 5 9

2017-08-10 19:54:57 325

原创 lab104_2

高精度加法,相乘之后判断是否大于10就好了#include #include #include using namespace std; int main() { char a1[500],b1[500]; int a[500],b[500],c[1000],la,lb,lc,x,i,j; while ((scanf("%s",a1))!=EOF) { s

2015-07-26 21:04:04 192

原创 UVA 10115

题目的意思就是搜索,然后替换,看起来很简单,但是感觉操作起来很复杂,WA了几之后,才发现别人都是用的函数...学到了新的两个函数strstr()非常实用,就是搜索字符串,并返回包括关键字在内的剩余字符串strstr(),strstr()函数中包含着两个参数,分别为1.被搜索的字符串,也就是大的字符串,2.所要搜索的字符串,也就是相当于关键字,当搜索到相关字符的时候,返回字符串的剩余部分

2015-07-26 20:53:34 342

原创 UVA 644

题目的意思就是要比较两个字符串,然后判断短的字符串是否是长字符串的开口,分别输出不同的文字中带那是读取之后要判断一次,两个字符串的长度哪一个更长# include # include # include char one[9][11], c, *p, temp[11];int i, j , k, l, pan = 0, n = 0;int cmp(char s1[], cha

2015-07-26 20:46:14 310

原创 UVA 10815

题目的意思就是按顺序输出一段字符串中,没有重复的单词,基本思路就是读取字符串到数组中,要是读取到相同的就舍弃,最后排序输出。然后排序的时候遇到了问题,冒泡排序法的结果是runtime,也就是说必须换一种排序方法qsort()函数的用法 ,qsort包含4个参数,第一个是表示排序数组的首地址,第二个是表示排序数组的里面元素的个数,第三个是表示排序数组中单个元素的大小,第四个是指针,用于确

2015-07-26 20:40:36 501

原创 UVA 10878

找规律,密码是按照二进制的,所以比一些就可以的到规律,学了一个getslab104_6的fgets()函数,包含的三个参数,第一个是表示读取的位置,是一个字符串指针,也就是字符串的首地址,第二个是所要读取的字符的个数,第三个是读取的位置,肯能是文件指针,如果是stdin那就表示的是,从键盘输入,返回值是第一个参数也就是文件指针,失败返回NULL# include # include

2015-07-26 20:34:42 288

原创 UVA 409

题目的意思的是,读取输入的两个数字,第一个数字表示关键字的数目,第二个数字表示搜索字符串的数字,读取完毕之后将字符串中的每一个单词分开读取到临时字符串中,并与关键字进行匹配,每匹配到一个计数加一,最后比较用于计数的数组,输出含有关键字最多的字符串,学到scanf()读取完毕后,读取字符串要在读取字符串前面加一个getchar()将'\n'取走,不然字符串的输出会多一个回车#includ

2015-07-26 20:29:50 249

空空如也

空空如也

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

TA关注的人

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