自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

落叶、等秋风

未来的你,一定会感激现在拼命的自己!

  • 博客(157)
  • 资源 (1)
  • 收藏
  • 关注

转载 说说Java的NIO

首先了解下所谓的java nio是个什么东西!IO是靠字符或字节进行传输,比较慢! 而NIO是靠块, 也就相当于一个Buffer, 一块一块的传输, 速度较快! 同时加入了多线程的控制, 一个NIO流可以同时传输多个块等, 也就是所谓的异步传输; 传统的并发型服务器设计是利用阻塞型网络I/O以多线程的模式(一个SOCKET链接,服务端就启动一个线程接受服务)

2017-08-23 23:36:49 281

转载 布隆过滤器

海量数据处理利器之布隆过滤器      看见了海量数据去重,找到停留时间最长的IP等问题,有博友提到了Bloom Filter,我就查了查,不过首先想到的是大叔,下面就先看看大叔的风采。             一、布隆过滤器概念引入      (Bloom Filter)是由布隆(Burton Howard Bloom)在1970年提出的。它实际上是由一个很长的二进制向量和一系列

2017-08-22 23:16:22 322

原创 451. Sort Characters By Frequency

public class Solution { public String frequencySort(String s) { Map m = new HashMap<>(); for(int i=0;i<s.length();i++) { char c = s.charAt(i);

2017-07-28 16:20:57 218

原创 260. Single Number III----leetcode

Given an array of numbers nums, in which exactly two elements appear only once and all the other elements appear exactly twice. Find the two elements that appear only once.For example:Given 

2017-07-19 09:48:55 263

转载 判断一颗树是否为二叉搜索树

10 / \ 5 15 -------- binary tree (1) / \ 6 20假定当前结点值为k。对于二叉树中每个结点,判断其左孩子的值是否小于k,其右孩子的值是否大于k。如果所有结点都满足该条件,则该二叉树是一棵二叉搜索树。很不幸的是,这个算法是错误的。考虑上面的二叉树,它符合上面算法的条件,但是它不是一棵二叉搜索

2017-06-05 21:56:33 484

原创 将一组阿拉伯数字转换成中文大写数字

题目大概: 将一组阿拉伯数字转换成中文大写数字 52306 ==> 伍万贰千叁百零陆 我实现了将文件中的一组数字(每行为一个数) 形如: Java代码  25364  466932300  12350006  100000  66699553001  这样的文件中的数字全转换成中文大写数字 只是算法没有架构设计

2017-05-28 20:01:17 948

原创 动态规划题目

想兑换100元钱,有1,2,5,10四种钱,问总共有多少兑换方法。下面提供两种实现方式,其中代码注释的很清楚。关于动态规划的基本原理,参考:http://www.cnblogs.com/sdjl/articles/1274312.html2. 递归解法[cpp] view plain c

2017-05-25 20:19:23 312

原创 MySQL常用引擎的锁机制

一、引言                                                                                                                         MySQL引擎默认的锁级别:MyISAM和MEMORY采用表级锁(table-level locking)。 BDB采用页面锁(pag

2017-05-25 09:07:08 272

转载 Jave虚拟机划分的三个代: 年轻代、年老代和持久代

转载自:点击打开链接虚拟机中的共划分为三个代:        年轻代(Young Generation)、年老代(Old Generation)和持久代(Permanent Generation)。其中持久代主要存放的是Java类的类信息,与垃圾收集要收集的Java对象关系不大。年轻代和年老代的划分是对垃 圾收集影响比较大的。年轻代:      

2017-05-23 11:26:57 558

转载 jvm 知识点总览

在江湖中要练就绝世武功必须内外兼备,精妙的招式和深厚的内功,武功的基础是内功。对于武功低(就像江南七怪)的人,招式更重要,因为他们不能靠内功直接去伤人,只能靠招式,利刃上优势来取胜了,但是练到高手之后,内功就更主要了。一个内功低的人招式在奇妙也打不过一个内功高的人。比如,你剑法再厉害,一剑刺过来,别人一掌打断你的剑,你还怎么使剑法,你一掌打到一个武功高的人身上,那人没什么事,却把你震伤了,你还怎么

2017-05-23 11:08:31 256

原创 Java小谈GC

GC算法 垃圾收集器概述垃圾收集 Garbage Collection 通常被称为“GC”,它诞生于1960年 MIT 的 Lisp 语言,经过半个多世纪,目前已经十分成熟了。jvm 中,程序计数器、虚拟机栈、本地方法栈都是随线程而生随线程而灭,栈帧随着方法的进入和退出做入栈和出栈操作,实现了自动的内存清理,因此,我们的内存垃圾回收主要集中于 java 堆和方法区中,在程序运行期间,这

2017-05-23 10:49:16 265

原创 凸多边形直径

我们将一个多边形上任意两点间的距离的最大值定义为多边形的直径。 确定这个直径的点对数可能多于一对。 事实上, 对于拥有 n 个顶点的多边形, 就可能有 n 对“直径点对”存在。  一个多边形直径的简单例子如左图所示。 直径点对在图中显示为被平行线穿过的黑点 (红色的一对平行线). 直径用浅蓝色高亮显示。显然, 确定一个凸多边形 P 直径的点对不可能在多边形 P 内部。

2017-05-17 14:20:16 2635

原创 CSS 垂直居中的11种方式

11种实现方式分别如下:1. 使用绝对定位和负外边距对块级元素进行垂直居中html代码:div id="box"> div id="child">我是测试DIVdiv>div>css代码:#box { width: 300px; height: 300px; background: #ddd; positio

2017-04-13 21:52:25 1134

原创 jQuery中事件绑定bind、live、delegate、on方法

1. 给页面上的某个元素绑定事件,最初采用下面的方式实现:    $(‘selector’).click(function(){        //code});缺点:不能同时绑定多个事件,不能绑定动态的元素。后来接触到了on、bind、live、delegate,以下是对它们的一些探究。 2. bind(type,[data],fn

2017-04-08 20:44:11 408

原创 jQuery 事件委托

随着DOM结构的复杂化和Ajax等动态脚本技术的运用,有了较多的动态添加进来的元素,直接用JQ添加click事件会发现新添加进来的元素并不能直接选取到,在这里就需要用到事件委托方法,JQ为事件委托提供了live()、dalegate()和on()方法。   事件委托我们知道,DOM在为页面中的每个元素分派事件时,相应的元素一般都在事件冒泡阶段处理事件。在类似 body > div

2017-04-08 20:33:53 2756

原创 js继承方式总结

写在前面一直不喜欢JS的OOP,在学习阶段好像也用不到,总觉得JS的OOP不伦不类的,可能是因为先接触了Java,所以对JS的OO部分有些抵触。偏见归偏见,既然面试官问到了JS的OOP,那么说明这东西肯定是有用的,应该抛开偏见,认真地了解一下约定P.S.下面将展开一个有点长的故事,所以有必要提前约定共同语言:123

2017-04-08 19:26:34 195

原创 Ajax跨域方法

由于在工作中需要使用AJAX请求其他域名下的请求,但是会出现拒绝访问的情况,这是因为基于安全的考虑,AJAX只能访问本地的资源,而不能跨域访问。比如说你的网站域名是aaa.com,想要通过AJAX请求bbb.com域名中的内容,浏览器就会认为是不安全的,所以拒绝访问。会出现跨域问题的几种情况:后台在百度上寻找解决方案解决了这个问题,一共总结出三种方案:代理、JSON

2017-04-08 13:54:15 270

原创 html设置浏览器模式

标准模式与怪异模式:        由于历史的原因,各个浏览器在对页面的渲染上存在差异,甚至同一浏览器在不同版本中,对页面的渲染也不同。在W3C标准出台以前,浏览器在对页面的渲染上没有统一规范,产生了差异(Quirks mode或者称为Compatibility Mode);由于W3C标准的推出,浏览器渲染页面有了统一的标准(CSScompat或称为Strict mode也有叫做Stand

2017-04-07 22:24:37 3558

转载 浏览器标准模式和怪异模式

要想写出跨浏览器的CSS,必须知道浏览器解析CSS的两种模式:标准模式(strict mode)和怪异模式(quirks mode)。所谓的标准模式是指,浏览器按W3C标准解析执行代码;怪异模式则是使用浏览器自己的方式解析执行代码,因为不同浏览器解析执行的方式不一样,所以我们称之为怪异模式。浏览器解析时到底使用标准模式还是怪异模式,与你网页中的DTD声明直接相关,DTD声明定义了标准文档的

2017-04-07 22:05:13 271

原创 float 效果AND原理解析

先看一下在w3c中对于float的解释 float被归类于CSS 定位属性(Positioning) 描述:规定框是否应该浮动。 定义和用法:float 属性定义元素在哪个方向浮动。以往这个属性总应用于图像,使文本围绕在图像周围,不过在 CSS 中,任何元素都可以浮动。浮动元素会生成一个块级框,而不论它本身是何种元素。 如果浮动非替换元素,则要指定一个明确的宽度;否则,它们会尽可能

2017-04-06 22:37:50 663

转载 float 原理~

CSS Float是网页设计最强大的灵活性功能之一。本文介绍CSS Float的基本原理和行为特征,并介绍各种浏器Float特性的Bugs。内容基本的浮动原理浮动是如何进行的浮动从何处开始水平浮动堆叠反向浮动Clearing Floats基本的浮动原理任何元素 element 都可以被浮动。段落、div、list、tables,以及图像都可以被浮动,事实上即使是像 span 和

2017-04-06 22:14:47 313

转载 jQuery选择器

jQuery 的选择器可谓之强大无比,这里简单地总结一下常用的元素查找方法 $("#myELement") 选择id值等于myElement的元素,id值不能重复在文档中只能有一个id值是myElement所以得到的是唯一的元素 $("div") 选择所有的div标签元素,返回div元素数组 $(".myClass") 选择使用myClass类的css

2017-04-06 22:02:43 168

转载 小谈闭包

一、变量的作用域要理解闭包,首先必须理解Javascript特殊的变量作用域。变量的作用域无非就是两种:全局变量和局部变量。Javascript语言的特殊之处,就在于函数内部可以直接读取全局变量。Js代码  var n=999;  function f1(){    alert(n);  }  f1(); // 999另一

2017-03-08 21:12:56 168

转载 Flex布局详解

网页布局(layout)是CSS的一个重点应用。布局的传统解决方案,基于盒状模型,依赖 display属性 + position属性 + float属性。它对于那些特殊布局非常不方便,比如,垂直居中就不容易实现。2009年,W3C提出了一种新的方案----Flex布局,可以简便、完整、响应式地实现各种页面布局。目前,它已经得到了所有浏览器的支持,这意味着,现在就

2017-03-08 19:47:37 194

转载 前端面试题

1、你做过的最满意的前端作品?2、你了解哪些新技术?3、你是怎样接触前端的?4、你对你的学校和专业怎么看?5.下图绿色区域的宽度为100%,其中有三个矩形,第一个矩形的宽度是200px,第二个和第三个矩形的宽度相等。请使用CSS3中的功能实现它们的布局。已知HTML结构是:column 1column 2column 35.解答:

2017-03-02 21:06:30 463

原创 RWD----响应式网页设计

响应式网页设计(RWD   Responsive Web Design)是将已有的开发技巧(弹性网格布局,弹性图片,媒体和媒体查询)整合起来,还可以称为流式设计,塑料布局,流体设计,自适应布局,跨设备设计以及弹性设计。真正的响应式布局不仅仅只是根据视口大小改变网页布局,相反,它是要从整体上颠覆我们当前的设计方法,以往我们都是对桌面电脑进行固定宽度设计,然后将其缩小并对小屏幕进行内容重排,现在是应该

2016-12-05 16:25:58 1236

原创 HTML知识点总结

允许用户将页面最多放大到设备宽度的3倍,最小压制设备宽度的一半user-scaleable=no 禁止缩放

2016-12-05 16:10:54 235

原创 css标签及其作用

http://www.w3school.com.cn/cssref/index.asp

2016-12-05 16:03:41 717

转载 roll-pitch-yaw

三维空间的右手笛卡尔坐标如图1所示。图1在航空中,pitch, yaw, roll如图2所示。pitch是围绕X轴旋转,也叫做俯仰角,如图3所示。yaw是围绕Y轴旋转,也叫偏航角,如图4所示。roll是围绕Z轴旋转,也叫翻滚角,如图5所示。图2图3图4图5

2016-11-24 10:10:30 447

原创 leetcode ----130. Surrounded Regions

思路:先遍历整个四个边,如果边上有‘O’,那就沿着‘O’一直遍历,把所有的‘O’都变成‘#’,遍历完成四条边后,然后遍历真个图,遇到‘O’就赋值‘X’,遇到‘#’还原成‘O’ void helper(vector> &board,int i,int j) //检查边界是否有‘O’,有的话置为‘#’,沿着‘O’一直检查 { if(board[i][j]=='

2016-11-18 13:21:50 272

原创 PID算法控制

PID算法控制从网上找的PID讲解,感觉还不错,是基于电机的PID控制讲的:PID算法原理及调整规律一、PID算法简介首先必须明确PID算法是基于反馈的。一般情况下,这个反馈就是速度传感器返回给单片机当前电机的转速。简单的说,就是用这个反馈跟预设值进行比较,如果转速偏大,就减小电机两端的电压;相反,则增加电机两端的电压。 顾名思义,P指是比例(Proportion),I

2016-11-16 09:26:07 1177

转载 经典A* 算法解析

会者不难,A*(念作A星)算法对初学者来说的确有些难度。这篇文章并不试图对这个话题作权威的陈述。取而代之的是,它只是描述算法的原理,使你可以在进一步的阅读中理解其他相关的资料。最后,这篇文章没有程序细节。你尽可以用任意的计算机程序语言实现它。如你所愿,我在文章的末尾包含了一个指向例子程序的链接。 压缩包包括C++和BlitzBasic两个语言的版本,如果你只是想看看它的运行效果,里面还包含

2016-11-11 18:34:44 3561

原创 泰森多边形(Voronoi图)生成算法

一、       文章目的            本文描述了在geomodel模块中,生成泰森多边形所使用的算法。二、        概述  GIS和地理分析中经常采用泰森多边形进行快速插值,和分析地理实体的影响区域,是解决邻接度问题的又一常用工具。荷兰气候学家A·H·Thiessen提出了一种根据离散分布的气象站的降雨量来计算平均降雨量的方法,即将所有相邻气象站连成三角形,作这些

2016-11-02 08:46:22 7311 1

原创 leetcode ----69. Sqrt(x)

法一:int mySqrt(int x) { if(x<2) return x; long start = 1,end = x,mid = 0; while(start<=end) { mid = start + (end-start)/2; l

2016-10-27 10:52:40 326

原创 leetcode ----167. Two Sum II - Input array is sorted

int helper(int left,int right,int target,vector&numbers) { while(left<=right) { int mid = (right+left)/2; if(numbers[mid]==target) {

2016-10-26 10:19:03 166

原创 leetcode ----238. Product of Array Except Self

法一:TLEvector productExceptSelf(vector& nums) { vector res; for(int i=0;i<nums.size();i++) { int flag = 0; int sum = 1; while(flag<nums.size()

2016-10-09 16:34:50 181

原创 leetcode ----59. Spiral Matrix II

void support(vector> &res, int row, int col, int len, int &num){ if (len <= 0) return; int i = row, j = col; if (len == 1) { res[i][j] = num++; return; } while (j<col+len-1) { res[i][

2016-09-30 14:49:05 211

原创 leetcode ---- 350. Intersection of Two Arrays II

vector intersect(vector& nums1, vector& nums2) { vector res; sort(nums1.begin(),nums1.end()); sort(nums2.begin(),nums2.end()); int m = nums1.size(); int n=

2016-09-27 14:51:28 184

原创 leetcode ----209. Minimum Size Subarray Sum

法一:超时int helper(int k,vector &nums,int s) { for(int i=0;i<nums.size();i++) { int sum = 0; for(int j=i;j<k+i&&j<nums.size();j++) {

2016-09-26 17:41:23 228

原创 leetcode ----394. Decode String

string decodeString(string s) { string tem; stack stanum; //存储数字 stack stastr;//存储字符串 int n=0; for(int i=0;i<s.length();i++) { if(isdig

2016-09-25 16:27:04 224

Computational Fourier Optics:a MATLAB tutorial

Computational Fourier Optics:a MATLAB tutorial 傅里叶光学,带MATLAB代码,非常实用

2017-12-25

空空如也

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

TA关注的人

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