1、Tomcat的优化经验答:去掉对web.xml的监视,把JSP提前编辑成Servlet;有富余物理内存的情况下,加大Tomcat使用的JVM内存。 2、什么是Servlet?答:Servlet运行在Web服务器端的Java应用程序,可以生成动态的Web页面,属于客户端和服务器响应的中间层。 3、Servlet的生命周期答:servlet有良好的生存期的定义,包括加载和实例化、初始化、处理请求以及服务结束。 这个生存期由java.servlet.servlet接口中的init、service、de...
面试题1:变量的声明和定义有什么区别 为变量分配地址和存储空间的称为定义,不分配地址的称为声明。一个变量可以在多个地方声明,但是只在一个地方定义。加入extern修饰的是变量的声明,说明此变量将在文件以外或在文件后面部分定义。 说明:很多时候一个变量,只是声明不分配内存空间,直到具体使用时才初始化,分配内存空间,如外部变量。 面试题2:写出bool 、int、 float、指针变量与“零值”比较的if语句 bool型数据: if( f...
一、什么是html5语义化?使用合理,正确的html标签格式化文档。二、CSS样式优先级?就近原则,行内>内联>外联三 什么是盒模型?主要分为两种,w3c标准盒模型,IE标准模型.把网页所有元素当成盒子,宽度是由content,padding,margin,border组成.为什么有两种盒模型,IE的浏览器标准于w3c标准不同.四行内元素和块级元素?一般标签分为行内元素以及块级元素两种.(常用的) //行内元素:与其他元素并排,不可设宽高.<a> //标签 <b> //字体...
题目描述输入两棵二叉树A,B,判断B是不是A的子结构。(ps:我们约定空树不是任意一个树的子结构)代码示例public class Offer18 {public static void main(String[] args) {//构建树1TreeNode root1 = new TreeNode(1);root1.left = new TreeNode(2);root1.right = new TreeNode(3);root1.left.left = new TreeNode(4);root1.left.right = new TreeNode(5);//构建树2TreeNode root2 = new TreeNode(1);root2.left = new TreeNode(...
一想到也快要到自己找工作的时候了,也就准备一下这方面的东西吧,今天比较无聊,随便在网上看了几道题目,这里记录一下:(1)1个文本中存了100亿条数据,排好序的,怎么快速查找某个数据?解答:这种题目,一看到已经排好序,那么就首选二分查找,但是这里有个问题,数据量很大,而且是保存在文本中的,也就是不是常规的内存中在数组当中进行二分查找。。。所以这里文本中数据时怎么保存的就非常关键了。。。如果是按照字符保存的...
// 面试题18(一):在O(1)时间删除链表结点// 题目:给定单向链表的头指针和一个结点指针,定义一个函数在O(1)时间删除该// 结点。链表结点与函数的定义如下:// struct ListNode{// int m_nValue;// ListNode* m_pNext;// };// void deleteNode(ListNode** pListHead,ListNode* pToBeDeleted);解题思路:这是目前为止,唯一一道,我不看书就知道怎么做的题。正常从头遍历的话,很明显时间复杂度是O(n),但是他把目标结点给出来了...
#位置实参def func(a,b):print(‘a=‘+a)print(‘b=‘+b) func(‘a‘,‘b‘) func(‘b‘,‘a‘)#关键字实参def func1(a,b):print(‘a=‘ + a)print(‘b=‘ + b) func1(a=‘a‘,b=‘b‘)#参数具有默认值def func1(a,b=‘fei‘):print(‘a=‘ + a)print(‘b=‘ + b) func1(a=‘a‘)#参数可选 #可选参数一定要在末尾,否则errordef printFullName(first,last,middle=‘‘):#if middle:Error不对if middle==‘‘:print(first+last)else...
1.数据库分类?关系型数据库和非关系型。常用关系型:Myspl、Oracle、SQLServer非关系型:Redis、Hadoop、Memcache、Mogobd2.关系数据库三范式?范式就是设计数据库表时要遵循的规范。要想满足第二范式必须先满足第一范式,要想满足第三范式必须先满足第二范式。第一范式(1NF):数据表的每一列都是不可分割的数据项,同一列中不能有多个值(或者说不能有两个表示属性相同的列),即实体中的某个属性不能有多个值或者不能有重复属...
O(n)的解法:考虑在遍历数组的时候保存两个值:一个是数组中的一个数字,一个是次数。当我们遍历到下一个数字的时候,如果下一个数字和我们之前保存的数字相同,则次数加1。如果下一个数字和我们之前保存的数字不同,则次数减1。如果次数为零,我们需要保存下一个数字,并把次数设为1。由于我们要找的数字出现的次数比其他所有数字出现的次数之和还要多,那么要找的数字肯定是最后一次把次数设为1时对应的数字。原理就是如果确实存...
1.简述列举了解的编程语言,语言间的区别是什么?编译型: 一次性全部编译成二进制码,然后运行 解释型:编译一行,运行一行 1.python 解释型,间接高效,容易上手,各个方向百花齐放 2.java 混合型(JVM,JIT编译器),开发周期慢,web方向 3.c 编译型 属于底层开发,只有面向过程,没有面向对象 4.c++ 编译型 属于底层开发,既有面向过程,还有面向对象 5.go 编译型 应用在区块链,高并发高可用,游戏方向2.python2和python3有什么...
九章算法官网-原文网址http://www.jiuzhang.com/problem/34/题目有一个仅有0和1组成的01串,找到其中最长的一段子串,使得该子串中0和1的数目相等解答如果将0看做-1,则我们要找的子串是最长的和为0的子串。这种子串求和的问题,一般采用前缀和的方法来解决。用Sum[i]代表前i个数的和,问题的模型转换为,找到i和j,满足Sum[i] 与Sum[j]相等,且|i-j|最大。使用Hash表作为辅助数据结构,Hash表中记录了获得某个Sum时最小的i。从左到...
经常有人会问:能介绍下你做过最复杂的系统吗?对此,你被人问起过吗,你思考过什么标准才算复杂吗? 系统的复杂性包括了技术复杂性和业务复杂性。有人抱怨道:我做的系统一点都不复杂,你看我们数据量不大,用不上分库分表,业务也不复杂,单体系统就够了,什么负载均衡和集群也没有,流量也不大,高并发和分布式也没接触过。何为技术复杂性,我上面提到的都算,随着业务的发展,我们的系统架构需要支持大数据和高并发,因此复杂的...
首先我们看一段代码int num=1; try{num++;return num; } finally {++num; System.out.println(num); }下面我们解析这段代码,探究一下最终num的值是多少?1.首先由int num=1;这段代码我们知道num的值为1;2.进入try继续执行,num++执行完毕后num的值变为了2,return num后系统将自动在系统内存中添加一块内存,存储return后num的值(2)3.进入finally后(finally块是必须执行的,除非Java虚拟机退出则不执行),++num后num的值变为了3,但是它要...
final 标记的类不能被继承 。提高安全性,提高程序的可读性。final标记的方法不能被子类重写。final标记的变量,只能被赋值一次,即称为常量。final和abstract这两个关键字是反相关的,final类就不可能是abstract的。final方法在编译阶段绑定,称为静态绑定(static binding)。对于final域,编译器和处理器要遵守两个重排序规则:1.在构造函数内对一个final域的写入,与随后把这个被构造对象的引用赋值给一个引用变量,这两个操作之...
Redis面试题收集redis描述redis是一个高性能key-value内存数据库,支持数据持久化,数据库主从和集群部署,支持多种数据类型string ,hash,list,set ,sortset,hyperLoglog,BloomFilter redis速度为何如此之快redis是基于内存的数据库,整体数据结构类似一个大的hashmapredis是单线程的不需要来回切换线程执行redis使用io多路复用技术 可以并发连接, 底层使用epoll非阻塞api缓存雪崩和缓存击穿大量key同事失效 造成redis阻塞查询不存在的...