ALi面试题

ALi面试题 JAVA中接口与抽象类的区别 简述JVM的内存布局 JAVA中接口与抽象类的区别 要知道接口与抽象类的区别,首先我们得先知道这两玩意到底是啥。 抽象类是一种专门用来当做父类的类,作用类似于我们所说的“模板”,用关键字abstract声明,其目的是要设计者一句它的格式来修改并创建新的类。但是抽象类并不能创建对象,只能通过抽象类派生出新的类(子类),再由它来创建对象。 抽象类的使用中存在单继承的限制,即一个子类只能继承一个抽象类。 抽象类的使用规则(重要): 包含抽象方法的类必须是抽
分类: 其他 发布时间: 04-17 23:34 阅读次数: 0

重做剑指offer(二)——替换空格

重做剑指offer(二)——替换空格 题目描述:请实现一个函数,将一个字符串中的每个空格替换成“%20”。例如,当字符串为We Are Happy.则经过替换之后的字符串为We%20Are%20Happy。 分析:本题比较简单,很容易可以想到思路。我们从头开始扫描字符串,当遇到空格时,就将空格替换为%20,并且后面的字符全都往右移动两个单位。这样的解法毫无疑问是正确的,但是细想一下,对于一个长度为n的字符串,每次遇到空格,要对后面的O(n)个字符进行移动,若含有O(n)个空格,这个算法的时间复
分类: 其他 发布时间: 04-17 23:34 阅读次数: 0

重做剑指offer(四)——重建二叉树

重做剑指offer(四)——重建二叉树 题目描述:输入某二叉树的前序遍历和中序遍历的结果,请重建出该二叉树。假设输入的前序遍历和中序遍历的结果中都不含重复的数字。例如输入前序遍历序列{1,2,4,7,3,5,6,8}和中序遍历序列{4,7,2,1,5,3,8,6},则重建二叉树并返回。 分析:改题是给出二叉树的前序遍历序列和中序遍历序列,编写函数实现重建二叉树的功能。既然如此,我们就必须先要知道啥是二叉树的前序遍历,啥又是中序遍历。 前序遍历:先访问二叉树的根节点,再访问左子节点,最后访问右子
分类: 其他 发布时间: 04-17 23:33 阅读次数: 0

重做简直offer(五)——用两个栈实现队列

重做简直offer(五)——用两个栈实现队列 题目描述:用两个栈来实现一个队列,完成队列的Push和Pop操作。 队列中的元素为int类型。 分析:首先我们党的知识储备中必须要有栈和队列的概念,栈是一种先进后出的数据结构,队列是一种先进先出的数据结构,push是压入操作,也就是把数据(或元素)添加进栈或队列,pop可以理解为取出或抛出操作,就是将数据(或元素)从栈或者队列中取出(注意,取出后栈或队列中不再有该元素,可以理解为输出并删除)。题目中只要求完成push和pop两个操作,我们只需要利用
分类: 其他 发布时间: 04-17 23:33 阅读次数: 0

面试总结(一)——哈啰出行

面试总结(一)——哈啰出行 1、synchronized和volatile是干啥的 2、用数组实现队列 3、多边形的最小外接矩形 4、memcached和redis的区别 5、redis的通信协议、规范 6、Java实例化一个对象所分配内存的过程 今天是找实习以来的第一次面试,第一次就这样献给了哈啰,现在才知道自己是有多菜,看来得加紧学习啊。 面试题及答案如下(乱序): 1、synchronized和volatile是干啥的 答案:synchronized 它用来修饰一个方法或者一个代码块的时
分类: 其他 发布时间: 04-17 23:33 阅读次数: 0

重做剑指offer(六)——旋转数组的最小数字

重做剑指offer(六)——旋转数组的最小数字 题目描述:把一个数组最开始的若干个元素搬到数组的末尾,我们称之为数组的旋转。 输入一个非减排序的数组的一个旋转,输出旋转数组的最小元素。 例如数组{3,4,5,1,2}为{1,2,3,4,5}的一个旋转,该数组的最小值为1。 NOTE:给出的所有元素都大于0,若数组大小为0,请返回0。 分析:这一题理解完题意之后应该很快就会有思路,只要找到数组中最小的那个数就好了,这时只需要将整个数组遍历一遍,虽然这样方法简单易理解,但是时间复杂度过大,为O(n
分类: 其他 发布时间: 04-17 23:33 阅读次数: 0

虚拟机ping不通主机与外网的解决方法

当ping百度的时候出现ping: unknown host www.baidu.com的解决方法 首先输入命令修改 (vi /etc/sysconfig/network-scripts/ifcfg-eth0),查看你的配置文件是否正确 如: 修改完成后重启网络: service network restart 此时再ping一次百度,如果还没有ping通,则需要查看你的路由表 输入 netstat -rn 命令 执行增加网关命令 route add default gw 192.168.61
分类: 其他 发布时间: 04-17 23:32 阅读次数: 0

SSM整合详细介绍

1搭建环境,导入maven依赖 <!-- 定义属性 --> <properties> <!-- 设置项目字符集 --> <project.build.sourceEncoding>UTF-8</project.build.sourceEncoding> <!-- spring版本号 --> <spring.version>4.3.2.RELEASE</spring.version> </properties> <dependencies> <!-- 配置servlet -->
分类: 其他 发布时间: 04-17 23:32 阅读次数: 0

Oracle SQL单行函数之数字函数

*****数字函数***** 简介:数字函数的输入参数和返回值都是数字类型,并且多数函数精确到38位。函数COS、COSH、EXP、 LN、LOG、SIN、SINH、SQRT、TAN和TANH精确到36位,函数ACOS、ASIN、ATAN和ATAN2精确到30位。 ···单行数字函数: 1.ABS(n) 该函数用于返回数字n的绝对值。如果输入参数值为null,那么返回值也为null。 2.ACOS(n) 该函数用于返回数字n的反余弦值,输入值的范围是-1~1,输出值为弧度。如果输入参数值为nu
分类: 其他 发布时间: 04-17 23:31 阅读次数: 0

Oracle SQL单行函数之字符函数

字符函数 简介:字符函数的输入参数为字符类型,返回值是字符类型或数字类型。除函数ASCII,INSTR和LENGTH返回的是数字类型外,其余的全部返回字符类型。 注意: 如果SQL函数返回的CHAR或VARCHAR2超出长度限制,那么会截断值并返回结果; 如果SQL函数返回的CLOB值超出长度限制,那么会显示错误信息。 1.ASCII(char) 该函数用于返回字符的ASCII码值。如果输入参数值为null,那么返回值也为null。 2.CHR(n) 该函数用于返回ASCII码值对应的字符。如
分类: 其他 发布时间: 04-17 23:31 阅读次数: 0

Oracle SQL单行函数之日期函数

日期时间函数 简介:日期函数用于处理DATE,TIMESTAMP,TIMESTAMP WITH TIME ZONE,TIMESTAMP WITH LOCAL TIME ZONE,INTERVAL DAY TO SECOND以及INTERVAL YEAR TO MONTH等数据类型的数据。 1.ADD_MONTHS(d,n) 该函数用于返回特定日期时间之前或之后的月份所对应的日期时间。d用于指定日期时间数据,参数n可以是任意整数。当n为负整数时,返回特定日期之前月份对应的日期时间; 当n为正整数
分类: 其他 发布时间: 04-17 23:31 阅读次数: 0

Oracle高级查询语句

Oracle高级查询语句 一、分组查询 1.分组函数group by :分组函数作用于一组数据,并对一组数据返回一个值 2.常用的分组函数: ·AVG 取平均值 ·SUM 求和 ·MIN 取最小值 ·MAX 取最大值 ·COUNT 统计次数 ·WM_CONCAT 行转列 如:select deptno 部门号,wm_concat(ename) 部门中员工的姓名 from emp group by deptno; 3.在分组函数中使用nvl函数 ·注意:nvl函数使分组函数无法忽略空值 4.gr
分类: 其他 发布时间: 04-17 23:30 阅读次数: 0

Linux ssh服务常用配置的详细描述及建议配置

SSH服务优化项目
分类: 企业开发 发布时间: 04-17 23:30 阅读次数: 0

Oracle SQL中join方式总结

在ORACLE数据库中,表与表之间的SQL JOIN方式有多种(不仅表与表,还可以表与视图、物化视图等联结)。SQL JOIN其实是一个逻辑概念,像NEST LOOP JOIN、 HASH JOIN等是表连接的物理实现方式。 为了更直观的了解以上join方式,我们通过俩个测试表来进行测试,首先是建表语句: create table U ( name varchar2(20), gender varchar2(10) ); create table D( name varchar2(20),
分类: 其他 发布时间: 04-17 23:30 阅读次数: 0

Python学习笔记(一)之基本数据类型

Life is Short,I Use Python 人生苦短,我用Python Python特点:简洁 、易于学习、运行效率慢 Python主流的应用场景:爬虫、大数据、测试、web、AI、脚本处理 Pythonz之禅: Simple is better than complex 简洁胜于复杂 Now is better than never. Although never is often better than right now 做也许好过不做,但不假思索就动手还不如不做 如何交换俩个
分类: 其他 发布时间: 04-17 23:30 阅读次数: 0

WinForm 对Web Api 增 册 改 查 的基本操作

WebApi代码: public class ValuesController : ApiController { Entities db=new Entities(); // GET api/values public IEnumerable<Person> Get() { return db.Person; } // GET api/values/5 public Person Get(int id) { return db.Person.FirstOrDefault(o => o.id
分类: 其他 发布时间: 04-17 23:29 阅读次数: 0

安装完成Redis后,验证安装是否成功时,报(error) ERR Client sent AUTH, but no password is set错误解决方法

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yhj198927/article/details/88790462 Windows下,在安装完成Redis后,需要登录auth账户,验证是否安装成功。网上很多方法说的都是在redis.windows-service.conf或者redis.windows.conf中设置密码即可,但是这两种方法我都试过了,没有成功。于是,自己研究了一下,发现需要在命令行里设置密码才行。具体如下: 解决方法: cm
分类: 其他 发布时间: 04-17 23:29 阅读次数: 0

用Python编程:''' 字符A-Z可以编码为1-26。"A"->"1", "Z"->"26" 现在输入一个数字序列,计算有多少种方式可以解码成字符A-Z组成的序列。

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yhj198927/article/details/88804456 ''' 字符A-Z可以编码为1-26。"A"->"1", "Z"->"26" 现在输入一个数字序列,计算有多少种方式可以解码成字符A-Z组成的序列。 例如: (1)输入:19 输出:2 (2)输入:268 输出:2 (3)输入:219 输出:3 ''' 代码如下 def how_many_ways(digi
分类: 其他 发布时间: 04-17 23:28 阅读次数: 0

Python解决'chromedriver' executable needs to be in PATH问题

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yhj198927/article/details/88806824 出现该问题的原因是与google浏览器对应版本的chromedriver.exe没有放到环境变量里。 1.首先下载chromedriver.exe,下载后得到的是一个chromedriver.exe文件。对应关系详见下表。 chromedriver.exe下载路径:http://npm.taobao.org/mirrors/ch
分类: 其他 发布时间: 04-17 23:28 阅读次数: 0

爬取拉勾网数据,并存入Mongodb数据库

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/yhj198927/article/details/88828263 import time import pymongo import requests from bs4 import BeautifulSoup #简历数据库连接 client=pymongo.MongoClient('localhost',27017) mydb=client['mydb'] lagou=mydb['lag
分类: 其他 发布时间: 04-17 23:28 阅读次数: 0