摘要:
分而治之概念 所谓“分而治之” 就是把一个复杂的算法问题按一定的“分解”方法分为等价的规模较小的若干部分,然后逐个解决,分别找出各部分的解,把各部分的解组成整个问题的解。 步骤如下: 分而治之案例 本案例是算法图解上的一个案例。现在你要分割一块土地,从中找出最大的正方形,找出的正方形可以全部分割该块 阅读全文
摘要:
计算机内存原理 要说递归和栈的问题,首先就要说下计算机内存的基本原理。简单理解计算机内存原理可以将一台电脑看作超市的存包柜,每个柜子都有柜号(即计算机中的地址,如0x000000f)。当需要将数据存储到计算机中时,计算机会提供一个地址。 栈 其实算法图解这本书顺序是先写递归再写栈,我认为这样的顺序不 阅读全文
摘要:
二分查找 二分查找又称折半查找,其输入的必须是有序的元素列表。二分查找的基本思想是将n个元素分成大致相等的两部分,取a[n/2]与x做比较,如果x=a[n/2],则找到x,算法中止;如果x<a[n/2],则只要在数组a的左半部分继续搜索x,如果x>a[n/2],则只要在数组a的右半部搜索x 假设如上 阅读全文
摘要:
最近写web项目,为了使JSP代码美观好维护,决定采用EL&JSTL表达式。 EL表达式直接就可以用,但是JSTL表达式是属于apache的一个开源库,这个用起来就需要倒入一些jar包之类。网上的方法大多雷同,最重要的都是几年前的东西了,所以游戏要自己整理一下。 正文 https://tomcat. 阅读全文
摘要:
写在前面,之前由于种种原因博客好久没有更新。最近打算重拾JavaWeb,所以从头开始,先用servlet+jdbc+bootstrap最基础的代码实现一个图书系统。考虑有管理员端+用户端,项目完成后会上传至github,后期会升级ssh/ssm等,毕竟是温故学习,一点一点来,项目会一直更新补充! g 阅读全文
摘要:
关于AbstractStringBuilder 首先通过查看源码发现,StringBuffer与StringBuilder都继承自AbstractStringBuilder抽象类。而AbstractStringBuilder类又实现了Appendable, CharSequence两个接口。这两个接 阅读全文
摘要:
快排概念 快速排序(英语:Quicksort),又称划分交换排序(partition-exchange sort),一种排序算法,最早由东尼·霍尔提出。在平均状况下,排序个项目要(大O符号)次比较。在最坏状况下则需要次比较,但这种状况并不常见。事实上,快速排序通常明显比其他算法更快,因为它的内部循环 阅读全文
摘要:
优先队列(堆)的定义 堆(英语:Heap)是计算机科学中一类特殊的数据结构的统称。堆通常是一个可以被看做一棵树的数组对象。在队列中,调度程序反复提取队列中第一个作业并运行,因为实际情况中某些时间较短的任务将等待很长时间才能结束,或者某些不短小,但具有重要性的作业,同样应当具有优先权。堆即为解决此类问 阅读全文
摘要:
哈希表(散列)的定义 散列表(Hash table,也叫哈希表),是根据关键码值(Key value)而直接进行访问的数据结构。也就是说,它通过把关键码值映射到表中一个位置来访问记录,以加快查找的速度。这个映射函数叫做散列函数,存放记录的数组叫做散列表。 哈希表的特点是采用以常数平均时间执行插入、删 阅读全文
摘要:
AVL树的定义 在计算机科学中,AVL树是最先发明的自平衡二叉查找树。在AVL树中任何节点的两个子树的高度最大差别为1,所以它也被称为高度平衡树。查找、插入和删除在平均和最坏情况下的时间复杂度都是。增加和删除可能需要通过一次或多次树旋转来重新平衡这个树。AVL树得名于它的发明者G. M. Adels 阅读全文