面试题(一)

1.redis的类型:string(字符串),hash(哈希),list(列表),set(集合)及zset(sorted set:有序集合)。

2.hashmap怎样保证key的唯一性:维护了一张  HashTable 。容器中的元素全部存储在Hashtable 中,每次添加元素都会先判断是否有重复的元素,hashcode()方法进行比较,若一样再equals()方法比较,他们的底层数据结构如果也相同的话,JVM就认为数据已经存在了,就不会添加数据

map的key值为object怎么避免重复?类的属性为id,name,用id计算hashcode,可以值定下来,name可以更改。

3.单例模式:

class A

{

  private A(){}

  private static A obj =null;

  public static A getInstance(){

    if(obj=null){

      obj=newA();

    }

      return obj;

}

}

4.二叉树的遍历

5.rpc--远程过程调用

dubbo

6.执行几次,每次输出的结果

public static void main(String[]args ){
for(int i=0,j=0,k=0;i<10&&j<4&&k<10;j=j+2){
System.out.print(i++);
System.out.print(++k+i);
}
}

2次。0214。

7.冒泡排序

 1 public static void main(String[] args) {
 2         int[] arr={6,3,8,2,9,1};
 3         for(int i=0;i<arr.length-1;i++){//外层循环控制排序趟数
 4             for(int j=0;j<arr.length-1-i;j++){//内层循环控制每一趟排序多少次
 5                 if(arr[j]<arr[j+1]){
 6                     int temp=arr[j];
 7                     arr[j]=arr[j+1];
 8                     arr[j+1]=temp;
 9                 }
10             }
11         }
12         for(int a=0;a<arr.length ;a++){
13             System.out.print(arr[a]);
14         }
15     }

 

8.abcddefdebcafmncdcf  不重复的最长字符串

 1 public static void main(String[]args){
 2         String str="abcddefdebcafmncdcf";
 3         List<Character> LongerStr=new ArrayList<>();
 4         for(int i=0;i<str.length();i++){
 5             List<Character> temp=new ArrayList<>();
 6             for(int j=i;j<str.length();j++){
 7                 char c=str.charAt(j);
 8                 if(temp.contains(c)){
 9                     if(LongerStr.size()<temp.size()){
10                         LongerStr=temp;
11                     }
12                     break;
13                 }
14                 else{
15                     temp.add(c);
16                 }
17             }
18         }
19         System.out.print(LongerStr);
20         for(char c:LongerStr){
21             System.out.print(c);
22         }
23     }

 

9.

name   kecheng   fenshu
张三    语文       81
张三     数学       75
李四     语文       76
李四     数学       90
王五     语文       81
王五     数学       100
王五     英语       90

(1)查询出每门课都大于80 分的学生姓名
select name from table group by name having min(fenshu)>80

(2)给出成绩全部合格的学生信息(包含姓名、课程、分数),注:分数在60以上评为合格

select * from 成绩表 where 姓名 not in (select distinct 姓名 from 成绩表 where 分数 < 60)

10.redis干嘛用的,hbase干嘛用的?

redis基于内存的高性能key-value数据库,具有加速和持久化的特征,速度快,因为存在内存中,分布式,读写分离,支持事物原子性。

hbase是一个分布式的,面向列的开源数据库,非结构化数据的分布式存储系统,对于数据结构字段不能够确定或杂乱无章,非常难按一个概念去进行抽取的数据适合hbase,因为它支持动态添加列。

11.首页加载慢怎么办?

1.是否是图片太大,压缩图片。

2.是够访问量过载

3.是否请求了大量接口

4.某个请求返回来的数据太多

5.是否是网络问题

6.按需加载

7.js和css合并

12.注册要注意的?

1.密码在网络传输的安全性,post:不能在本地存储与安全相关的用户信息,在向服务器传递数据的时候,都不能直接传递与安全相关的用户信息。https

2.数据库中存储密码的安全性,md5加密,加盐,随机生成字符串

3.在浏览器输入的安全性,禁止密码可以复制

4.预防sql注入

13.mock测试就是在测试过程中,对于某些不容易构造或者不容易获取的对象,用一个虚拟的对象来创建以便测试的测试方法。

14.列表生成式:可以生成列表的表达式

b = range(1, 11) c = [x*x for x in b] print(c)

15.装饰器:为已经存在的函数或对象添加额外的功能,decorator

16.自动化用的插件,jsonpath,redis,pymysql,yagmail,time,unittest,request

17.性能检测的检测指标

资源指标:CPU使用率,内存利用率,磁盘I/O,网络带宽

系统指标:并发用户数,在线用户数,平均响应时间,事务成功率,超时错误率

18.二级接口

19.unittest

20.get,post请求的区别

                                                                                             get                                                                post

外观上 在地址上看到传递的参数和值 地址栏上看不到数据
提交数据大小 提交少量数据,不同的浏览器最大值不一样,IE是255个字符 提交大量数据,可以通过更改php.ini配置文件来设置post提交数据的最大值
安全性
提交原理 提交的数据和数据之间在独立的 将提交的数据变成XML格式提交
灵活性 很灵活,只要有页面的跳转就可以get传递数据 不灵活

21.list【1,2,4,8,16】

public static void main(String []args){

  for(int i=1;i<=16;i=i*2){

    system.out.print(i)

}

}

22.链表

10,20,50

50,20,10

 1 public static void main(String args[]) {
 2     List<Integer> list=new ArrayList();
 3     list.add(10);
 4     list.add(30);
 5     list.add(50);
 6     List<Integer> list2=new ArrayList();
 7     for (int i = list.size()-1; i>=0; i--){
 8         list2.add(list.get(i));
 9     }
10     for(Integer a:list2){
11         System.out.println(a);
12     }
13 
14 }

 

23.查所有重复的email

id          name                        email

1           zhangsan                 zs@163.com

2           lisi                            ls@163.com

3           zhangsansan          zs@163.com

select email,count(id) from table group by email having count(id)>1

posted @ 2019-05-06 11:20  狐觞  阅读(192)  评论(0编辑  收藏  举报