- 博客(19)
- 资源 (1)
- 收藏
- 关注
原创 了解堆和堆排序
什么是堆?堆是一个完全二叉树。堆中每一个节点的值都必须大于等于(或小于等于)其子树中每个节点的值。对于每个节点的值都大于等于子树中每个节点值的堆,我们叫做大顶堆。对于每个节点的值都小于等于子树中每个节点值的堆,我们叫做小顶堆。堆的存储方式既然堆是一种完全二叉树,由于完全二叉树可以用数组来存储,所以堆可以用数组存储。数组中下标为 i 的节点的左子节点,就是下标为 i*2 的节点,右子节点就是下标为 i*2+1 的节点,父节点就是下标为 i/2的节点。堆化和删除堆顶元素1、往堆中插入一.
2020-05-15 09:05:27
311
原创 红黑树
一、为什么会有红黑树? 红黑树也是一种二叉查找树。对于普通的二叉查找树来说,如果不经任何处理,左右子树的高度相差严重时,查找的效率会退化为链表。为了维护左右子树高度的平衡,引入了AVL二叉树。AVL树严格符合平衡二叉查找树的定义,即任何节点的左右子树高度相差不超过1,是一种高度平衡的二叉查找树。平衡二叉树中平衡的意思,其实就是让整棵树左右看起来比较对称、比较平衡,降低树的高度,相应的插入、删除、查找等操作的效率高一些。红黑树是一种近似平衡的二叉树,之所以说近似平衡,是因为它对平衡的要求比AV...
2020-05-14 09:15:02
193
原创 二叉查找树
一、什么是二叉查找树?二叉查找树,是一种二叉树。要求在树中任意一个节点,其左子树的每个节点的值,都要小于这个节点的值,而右子树节点的值都要大于这个节点的值二、二叉查找树的查找、插入和删除操作二叉查找树的查找,从根节点开始查找,如果等于根节点,则查找结束,如果小于根节点,则从左子树开始递归查找,如果大于根节点,则从右子树开始递归查找。二叉查找树的插入操作:如果要插入的数据比节点的数据大,并且节点的右子树为空,就将数据直接插入到右子节点的位置,如果不为空,就递归遍历右子树,查找插入位置。同理,如
2020-05-14 09:02:33
342
原创 float与double的范围和精度
1. 范围 float和double的范围是由指数的位数来决定的。 float的指数位有8位,而double的指数位有11位,分布如下: float: 1bit(符号位) 8bits(指数位) 23bits(尾数位) double: 1bit(符号位) 11bits(指数位) 52bits(尾数位) 于是,float的指数范围为-127~+128,而dou
2017-11-16 09:54:44
326
原创 MySql数据库查询时大小写敏感问题
MySql数据库在查询时,默认是大小写不敏感的,如果项目需要对大小写敏感时,可以通过以下两种方式的任意一种完成。 一:修改需要对大小写敏感的表字段的字符校对规则Collation 字符集是一套符号和编码。字符校对规则是在字符集内用于比较字符的一套规则。 默认设置是utf8_general_ci,表示对大小写不敏感。
2017-08-30 17:29:28
2528
原创 标准差、方差、协方差和互相关系数
学过概率统计的孩子都知道,统计里最基本的概念就是样本的均值,方差,或者再加个标准差。首先我们给你一个含有n个样本的集合,依次给出这些概念的公式描述,这些高中学过数学的孩子都应该知道吧,一带而过。
2017-08-25 10:08:15
11048
1
原创 不使用中间变量交换两个整数
1) 算术运算简单来说,就是通过普通的+和-运算来实现。代码如下:int a,b;a=10;b=12;a=b-a; //a=2;b=12b=b-a; //a=2;b=10a=b+a; //a=10;b=10通过以上运算,a和b中的值就进行了交换。表面上看起来很简单,但是不容易想到,尤其是在习惯标准算法之后。它的原理是:把a、b看做数轴上的点,围绕两点间的距离来进行计
2017-07-18 15:43:03
840
转载 摩尔定律
摩尔定律是由英特尔(Intel)创始人之一戈登·摩尔(Gordon Moore)提出来的。其内容为:当价格不变时,集成电路上可容纳的元器件的数目,约每隔18-24个月便会增加一倍,性能也将提升一倍。换言之,每一美元所能买到的电脑性能,将每隔18-24个月翻一倍以上。这一定律揭示了信息技术进步的速度。
2017-07-10 14:14:13
501
转载 JavaScript基础知识点归纳
定义在函数外的变量一定是全局变量;定义在函数内的变量,如果声明了var,那该变量就是局部变量,如果不声明var,那么该变量就是全局变量。1、全局变量与局部变量 JavaScript?123456789varglobal = "Global";
2017-07-05 14:25:39
500
转载 Java 中>>和>>>的区别
Java中的位运算符:>>表示右移,如果该数为正,则高位补0,若为负数,则高位补1;>>>表示无符号右移,也叫逻辑右移,即若该数为正,则高位补0,而若该数为负数,则右移后高位同样补0。表达式为:result = exp1 >> exp2;result = exp2 >>> exp2;表示把数exp1向右移动exp2位。例如:res =
2017-07-05 11:59:55
274
原创 解决Datagird combobox中出现的问题
最近做项目用easyui的datagrid。某一字段需要用combobox格式,当combobox调用onselect函数时,在函数中修改该行中其他列的内容时,会报错。 具体如下: onSelect:function(rec){ var row = $("#policyList").datagrid("getSelected");
2017-06-23 10:23:29
401
原创 Javascript 用正则表达式判断字符串
test() 方法用于检测一个字符串是否匹配某个模式。 用法如下: RegExpObject.test(string) RegExpObject是正则表达式对象。 举例: 判断一个字符串是否只包括数字。 var testString1 = "123"; var testString2 = "123ab";
2017-06-22 16:18:29
861
转载 Keepalived 工作原理及简要安装
高性能集群软件-Keepalived keepalived 介绍 keepalived 是 Linux下一个轻量级的高可用解决方案 keepalived 主要通过虚拟路由冗余(VRRP)来实现高可用功能 优点:部署及使用简单,只需一个配置文件即可完成 功能:1. 服务器状态检测和故障隔离功能
2017-06-19 10:41:20
882
原创 取消Windows server 2008关机提示的方法
打开“开始”-“运行”,在“打开”一栏中输入“gpedit.msc”命令打开组策略编辑器,依次展开“计算机配置”→“管理模板”→“系统”,双击右侧窗口出现的“显示‘关闭事件跟踪程序’”,将“未配置”改为“已禁用”即可。
2017-06-16 10:24:35
6547
原创 easyui datagrid动态修改url
function GetData(url){ $.ajax({ url:url, type:"post", data:'...', dataType:'json', success:function(json){ $("#Grid").datagrid("loadData",json); } });} function replaceUrl
2017-06-12 12:09:21
2090
转载 99%的人都理解错了HTTP中GET与POST的区别
GET和POST是HTTP请求的两种基本方法,要说它们的区别,接触过WEB开发的人都能说出一二。最直观的区别就是GET把参数包含在URL中,POST通过request body传递参数。你可能自己写过无数个GET和POST请求,或者已经看过很多权威网站总结出的他们的区别,你非常清楚知道什么时候该用什么。当你在面试中被问到这个问题,你的内心充满了自信和喜悦。你轻轻松松的给出了一个
2017-06-08 11:36:55
252
原创 Http中post和get的区别
Http中post和get的区别 区别一:form表单提交数据时,数据的位置不同 使用get,form数据集被附加到form元素的action属性所指定的URL后面; 使用post,form数据集被包装在请求的body中并被发送。 区别二:安全性不同 如果用get提交一个验证用户名和密码的form,一般认为是不安
2017-06-08 11:29:37
335
原创 解决easyUI-datagrid不显示的问题
最近项目中需要用到表格,使用easyUI-datagrid。使用过程中发现了一个较为奇怪的问题,初始时将datagrid的display属性为none,之后点击某一个按钮后,再将display设置为block,可这是并没有把表格显示出来,只是出来一条竖线。 但这时如果将浏览器页面改变下大小,表格又显示出来了。 经过分析后发现,datagrid控件的长宽使用百分比
2017-06-07 16:21:54
9084
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人