面试总结(三)——连连支付


昨天下午(2019.4.25),连连支付来学校校招,我舔着个脸就跟着大部队去了。形式是宣讲会+笔试+面试,宣讲会中有两个介绍人还是在阿里有过十几年工作经验的,顿时感觉这家公司实力不俗啊。笔试地题目涵盖范围挺广的,有Java基础、JVM、数据库、tcp/ip、多线程、高并发等,过了笔试的就可以进入面试(这是一句废话),过了一面还有一个群面(我没进,原地爆炸!),最后一个群面是四人(两个Java一个测试、一个算法)组成一队分析一个项目,多个队伍各派一名队员进行陈述。先把面试中遇到问题总结在这里吧。

1、solr用什么分词

大家都知道,solr是一个搜索引擎,先利用分词器建立倒排索引,在对索引进行搜索,但是solr自带的分词器对于中文不是很好用,所以在对中文进行分词的情况中,常用的分词器是IK分词工具。

这里顺便提一个问题,虽然这个概念没被问到,但是学solr的时候已经见到过无数次了。
数据可以分为两类,结构化数据和非结构化数据,那啥是结构化数据、啥又是非结构化数据?

  • 结构化数据,简单来说就是数据库。存储在数据库里,可以用二维表结构来逻辑表达实现的数据。结合到典型场景中更容易理解,比如企业ERP、财务系统;医疗HIS数据库;教育一卡通;政府行政审批;其他核心数据库等。这种类别的数据最好处理,只要简单的建立一个对应的表就可以了。
  • 非结构化数据是数据结构不规则或不完整,没有预定义的数据模型,不方便用数据库二维逻辑表来表现的数据。包括所有格式的办公文档、文本、图片、XML, HTML、各类报表、图像和音频/视频信息等等。这类信息我们通常无法直接知道他的内容,数据库也只能将它保存在一个BLOB字段中,对以后检索非常麻烦。一般的做法是,建立一个包含三个字段的表(编号 number、内容描述 varchar(1024)、内容 blob)。引用通过编号,检索通过内容描述。现在还有很多非结构化数据的处理工具,市面上常见的内容管理器就是其中的一种。
  • 这样的数据和上面两种类别都不一样,它是结构化的数据,但是结构变化很大。因为我们要了解数据的细节所以不能将数据简单的组织成一个文件按照非结构化数据处理,由于结构变化很大也不能够简单的建立一个表和他对应。通常有两种储存方式:化解为结构化数据、用XML格式来组织并保存到CLOB字段中。

2、关于Spring的面试题

由于我还没怎么深入学习Spring框架,所以这里问了一些简单的IOC、DI、AOP的相关问题就过去了。(是得好好看看Spring了)

3、HashMap的结构

HashMap采取数组加链表的存储方式来实现。亦即数组(散列桶)中的每一个元素都是链表,如下图:
在这里插入图片描述
为什么需要有这些长度不一的链表呢?

首先我们需要知道什么是哈希冲突。
其实就是再采用哈希函数对输入域进行映射到哈希表的时候,因为哈希表的位桶的数目远小于输入域的关键字的个数,所以,对于输入域的关键字来说,很可能会产生这样一种情况,也就是,不同的关键字会映射到同一个位桶中的情况,这种情况就就叫做哈希冲突。

一般来说,解决哈希冲突有四种方法:拉链法(链地址法)、开放地址法、再哈希法和建立公共溢出区(如果说解决哈希冲突的三种方法,就说前三种),这里只稍微介绍一下,暂时不细说。

  • 链地址法:这种方法的基本思想是将所有哈希地址为i的元素构成一个称为同义词链的单链表,并将单链表的头指针存在哈希表的第i个单元中,因而查找、插入和删除主要在同义词链中进行。链地址法适用于经常进行插入和删除的情况。其实HashMap这里的的链表就是对拉链法的一种实现。
  • 开放地址法:当冲突发生时,使用某种探查(亦称探测)技术在散列表中形成一个探查(测)序列。沿此序列逐个单元地查找,直到找到给定的关键字,或者碰到一个开放的地址(即该地址单元为空)为止(若要插入,在探查到开放的地址,则可将待插入的新结点存人该地址单元)。查找时探查到开放的地址则表明表中无待查的关键字,即查找失败。(开放地址英文是Open addressing,网上好多博客
  • 1
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 5
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值