自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(36)
  • 问答 (1)
  • 收藏
  • 关注

原创 说说TCP

TCP的三次握手&四次挥手?网上已有较多相关资料,本文不做过多介绍,有兴趣可移步至TCP的11种状态,三次握手,四次挥手的原因。TCP是如何保证有序,不丢包,不重复的?历史上的两个著名解决方案:1. GBN(Go-back N):整个发送队列共用一个timer,该计时器会为发送队列中最老的未确认包开启计时:如果超时还未收到确认包,会将计时包开始的所有包重发;对接收端而言,收到unexpec...

2018-03-08 15:36:18 272

原创 常见智力题总结

1.天气预报说明天下雨的概率是84%,求明天中午12点之前下雨的概率。解:明天不下雨的概率是16%。而0-12点不下雨和12-24点不下雨是两个相互独立,且等概率的事件。故明天中午12点之前不下雨的的概率是x² = 0.16, x = 0.4。所以答案为1-0.4 = 60%。2.给定一张方桌,AB两人轮流将一枚硬币放在桌子上,先让对方无处放硬币的人获胜。问谁有必胜法则?解:先手必胜。因为题目没有...

2017-09-30 19:23:33 1825

原创 【数据库范式详解】1NF-BCNF

关系型数据库,由于数据分别存储在不同的表中,因此设计不当就会造成严重的数据冗余。而如果表的粒度设计得太小,又会放大关系型数据库读写很慢的缺点,表的连接操作会带来很大的开销。因此在设计库表时,有1NF、2NF、3NF、BCNF、4NF、5NF这些范式,从前到后要求依次提高。本文将介绍前4种范式及使用他们的原因,在实际设计时,一般的数据库满足3NF即可。我的另外两篇文章:《学生选课

2017-09-29 11:05:46 1447

原创 事务隔离级别及实现

事务的隔离级别就是通过各种锁来实现的。一般设置在应用程序上。1.read uncommitted 可读未提交的,允许脏读。     即:不加锁,事务TA可能读到TB中还未提交的数据。如果TB回滚,就读到了被回滚的数据。2.read committed  读提交的, 允许不可重复读取。     即:锁表中单行(事务当前游标位置加锁),在TA中,所有操作表中被锁行的语句结束后就释放

2017-04-22 11:36:20 743

原创 Redis的各种架构说明

类型 客户端 LB策略 出现的版本 说明 单点 Jedis,Lettuce 无 * - 客户端分片 ShardedJedis consistent hashing 2.x 多台单机Redis服务,通过ShardedJedis达到分片目的 SJ上维护哈希环 主备+哨兵 按是否需要分片选择J/SJ 客...

2018-08-22 14:24:03 911

原创 OAuth2.0

以登录为例,介绍OAUTH2.0(RFC-6749)授权码模式流程: 需登录的请求/aaa,被LoginInterceptor拦截 LoginInterceptor的工作: 请求公司的authorization_url  ( GET - https://xxxx/auth/oauth/authorize/) GET authorization_url必选参数: respon...

2018-08-14 16:17:53 441

原创 求两个链表的交点

思路整理:

2018-03-12 19:29:41 414

原创 推荐几个大佬的博客

【安全相关】:http://wiki.7ell.me/#!index.md【设计模式】:http://blog.csdn.net/lovelion/article/details/17517213【Socket-Windows】:http://blog.csdn.net/piggyxp/article/details/6922277【Select/epoll源码解读】:http://blog.cs...

2018-03-09 22:22:22 5031

原创 各类深搜题目汇总

一、计算无向图的连通分量个数import java.util.Scanner;/** * 计算图的连通分量 */public class ConnectedComponent { static int N,M; static int[] visit; static int[][] map; public static void main(String[] ...

2018-03-09 10:58:14 1318

原创 背包问题

0-1背包变形,TAOTAO要吃鸡牛客网,题目链接:https://www.nowcoder.com/acm/contest/74/B题目描述 Taotao的电脑带不动绝地求生,所以taotao只能去玩pc版的荒野行动了,和绝地求生一样,游戏人物本身可以携带一定重量m的物品,装备背包之后可以多携带h(h为0代表没有装备背包)重量的东西。玩了几天taotao发现了一个BUG,当装备背包之后,如...

2018-03-09 00:38:48 319

原创 动态代理

动态代理:好处:①可以用代理替代委托者,实现延迟加载。②可以在代理的方法中织入新的逻辑,完成方法调用前后应有的处理。③许多框架的核心就是动态代理和反射,如,Hibernate的延迟加载和Spring的AOP。静态代理的类图:相较于静态代理的好处:①动态代理和静态代理在结构原则上是一致的,但将Proxy的生成交给了第三方(JDK/CGL

2017-10-06 14:31:41 472

转载 字典树

背景:代码:public class Problem_23_TrieTree { public static class TrieNode { public int path; public int end; public TrieNode[] map; public TrieNode() { path = 0; end = 0; map =

2017-10-05 20:57:05 218

原创 接水问题

NOIP

2017-10-05 20:47:12 924

转载 查找算法

转自: http://blog.csdn.net/liyue199512/article/details/52253196 一、顺序查找代码简单易懂,但当数据量大的时候,查找效率极为低下,所以该算法适合小量数据。查找成功最好的情况是在第一个位置就找到了,算法时间复杂度为O(1)最坏的情况是在最后一个位置就找到了,时间复杂度为O(n)关键字在任何一个位置的概率

2017-10-04 22:38:15 223

原创 JSF实现无刷新二级联动

效果:在添加图书页,有一个图书分类的下拉框,选择某分类后会自动刷新出子分类。要点:JSF有一个"bug":如果页面中包含了下拉框,则提交表单时,JSF会在应用请求值阶段就对下拉框选择的值进行验证(事实上应该在转换完毕后进行验证)。如果这个值不是可选的值之一,则会抛出校验失败的异常。所以BookBean必须设置在SessionScoped上。代码:addBook.xhtm

2017-10-04 18:21:11 2627 16

翻译 JSF转换器&验证器的使用

转换器部分:或required="true"  :验证非空  :将字符串转为自定义的数字类型属性:    ①type:number数值(default), currency货币 , or percent百分数   ②pattern:Formatting pattern, as defined in java.text.DecimalFormat 

2017-10-04 12:47:32 622

翻译 JSF事件处理

值更改事件的两种处理方式:1.方法绑定: 将ManagedBean的方法传递到valueChangeListener属性上。

2017-10-04 12:30:18 438

原创 最优二叉检索树

定义:平均查找长度最小的二叉检索树,又叫最优二分检索树。动态规划求解,递推式证明如下:一个实例:

2017-10-01 22:09:26 365

原创 求二叉树两节点的最低公共节点

2017-10-01 22:01:21 326

转载 18种排序

18种排序算法总结原创 2016年08月07日 16:31:44361 0 0

2017-09-30 22:39:51 253

原创 TCP三次握手四次挥手的原因

连接建立阶段,三次握手:为什么不是一次?因为TCP是有链接的,就像打电话,A拨号给B,要B选择接听以后才能进行通信,故第二次握手是发送B同意的信号。为什么不是两次?因为网络传输是不可靠的,存在B发回的确认帧丢失的情况。如果这个包丢失了,那么A会认为和B没连上,超时重传一个连接信号;而B,则因认为A已经和自己建立好连接了,无视这个包。那么A、B之间永远连不上了。为什么B不对A

2017-09-30 19:24:25 300

原创 哈弗曼树

给定一篇文章,求它的哈夫曼编码。首先,统计词频(一般用HashMap来做);随后,创建一个优先队列,将TreeNode按词频由小到大出队;入队方法用offer(),出队方法用poll();他们与add/remove不同,队满或队空时不会抛异常而是返回false。TreeNode,应包含词频、Char、左右儿子四个信息;从优先队列中出队两个元素,创建一个新的TreeNod

2017-09-30 16:18:08 255

原创 并查集的使用

输入描述:  p个人,n个关系接下来n行,是n/2对关系,如A B,表示A认识B输出描述:判断这n个人是否全部互相认识(A认识B,B认识C,则A也认识C),如果是,输出他们最远的关系层数,如果不是,输出DISCONNECTEDpackage Qunar;import java.util.ArrayList;import java.util.HashSet;import

2017-09-30 16:11:46 207

原创 web安全

一、打开认证:    认证类型如果使用FORM形式,数据完整性非常弱,没有加密,允许有定制的登陆界面。配置如下:    ......            FORM                    /login.html            /error.jsp

2017-09-29 22:57:02 406

原创 求正则覆盖&判断保持依赖

判断左部属性是否多余:  已知alpha  -->  beta   F(函数依赖集合)A为alpha的一个子属性,若其多余,则  alpha-A  -->  beta    (在F上求闭包)判断右部属性是否多余:  已知alpha  -->  beta   F(函数依赖集合)A为beta的一个子属性,若其多余,则alpha  --> beta   (在F'上求闭

2017-09-28 19:12:02 8959

原创 学生选课系统库表设计

背景——用例图:一个基础的学生选课系统ER图设计如下:(学生和课程是n - m的关系,可修改的原图找不到了,悉知)库表设计:---专业表CREATE TABLE major(major_id INT PRIMARY KEY AUTO_INCREMENT,major_name VARCHAR(20)); ---学生表CREATE TABLE

2017-09-28 17:32:35 14023

原创 网上超市开发阶段的文档

需求分析:设计:

2017-09-28 17:04:10 400

原创 MySQL约束语法

外键、Check检查、触发器

2017-09-28 16:54:27 392

原创 SQL复杂查询练习

环境:MySQL5.0+实例一:银行系统下面提供表结构和一些数据,直接使用即可。-- branchcreate table branch(branch_name varchar(20) not null,branch_city varchar(20),assets int,constraint primary key(branch_name));-- acc

2017-09-28 12:25:26 2891 2

原创 JPQL

什么是JPQL?    JPQL的全称是“Java Persistence Query Language”,即Java持久性查询语言。JPQL是一种简单的类似于SQL的基于字符串的语言,用于查询实体,以及实体间的关系。JPQL简单、可读性强,允许编写可移植的查询,不必考虑底层数据存储。JPQL语法与SQL很相似。语法:select_clause

2017-09-28 11:37:46 386

原创 JDK各集合的底层实现

ArrayList&Vector:object数组,Vector线程安全;HashMap&HashTable:哈希表,拉链法。key重复会放到链表头,且每次读取也读链表头,HashTable线程安全;        存储时:计算key的hash,映射到Entry table[hashResult%length];有一个threshold变量,在某一链表的长度超过预设值时,会发生Hash

2017-09-28 11:22:55 772 2

原创 蘑菇阵

问题描述:* 现在有两个好友A和B,住在一片长有蘑菇的由n*m个方格组成的草地,A在(1,1),B在(n,m)。 * 现在A想要拜访B,由于她只想去B的家,所以每次她只会走(i,j+1)或(i+1,j)这样的路线, * 在草地上有k个蘑菇种在格子里(多个蘑菇可能在同一方格),问:A如果每一步随机选择的话(若她在边界上,则只有一种选择), * 那么她不碰到蘑菇走到B的家的概率是多

2017-09-28 11:17:25 272

原创 纸牌博弈问题

package July;/** * DP * 有一个整型数组A,代表数值不同的纸牌排成一条线。 * 玩家a和玩家b依次拿走每张纸牌,规定玩家a先拿,玩家B后拿, * 但是每个玩家每次只能拿走最左或最右的纸牌,玩家a和玩家b都绝顶聪明,他们总会采用最优策略。 * 请返回最后获胜者的分数。 * 给定纸牌序列A及序列的大小n,请返回最后分数较高者得分数(相同则返回任意

2017-09-28 11:09:04 337

原创 using Socket in C++

图,Linux下收包。Socket待更

2017-09-28 01:09:57 271

转载 SpringMVC的基本原理

Spring整体架构:

2017-09-28 01:00:02 292

原创 Spring+SpringMVC配置加载顺序

Spring Web应用加载顺序:XML版    ---->Web容器创建;    ---->上下文创建,但未初始化;    ---->监听器创建,并注册到Context上;    ----->上下文初始化;    ----->通知到监听者,Spring配置文件/@Configuration加载;    ---->load-on-startup>

2017-08-05 15:00:23 7674

空空如也

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

TA关注的人

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