Java教程

阿里大厂算法面试真题,你能答上来吗?(附答案)

本文主要是介绍阿里大厂算法面试真题,你能答上来吗?(附答案),对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

时光飞快,眨眼又到一年年底!

年底其实是跳槽换坑的绝佳时机,毕竟可以「年前面试,年后入职」,而且面试越早,好坑位较多,可选择的余地也较大。建议有换工作意向的测试同学可以多发发简历,多找找面试机会的。哪怕为明年的金三银四(人才流动高峰)积累点面试经验,都是极好的。

测试开发考察范围广
面试大厂测开岗位,最大的感受就是 —— 难!!!
在这里插入图片描述

这里凭记忆简单罗列了这次技术面试考核重点(范围很广,提问很多):

Linux、Shell、Redis、MQ、Kakfa、ELK、Selenium、TestNg、Jenkins、Vue
生命周期、VueX、Vuerouter …

基本每一个技能点都会出一道题,让你分析并给出自己的答案。另外,除了技术基础考核,也会着重问项目实战经验

面试完不禁汗颜:现在大厂测试开发考查范围这么广的吗?年薪 35W+ Offer 挑战确实不小!还是要继续好好学习,夯实基础,准备好再来!

一道算法面试题,试试看?
下面是这次面试的一道算法题,看起来不是很难,但是在面试中,难免会有点紧张,做起来还是有点头大。同为测试的你,需要花几分钟解答呢?

【原题要求】:返回一个 IP 数组,并且按 IP 最后一位排序返回。(编程语言随意,只需要能够正确排序返回即可)

在这里插入图片描述

参考答案
Shell 版本
来自@Yvan:在这里插入图片描述

来自@LensAclrtn:

在这里插入图片描述

来自网友@warmPhoto:

在这里插入图片描述

Python 版本

来自@天马:

在这里插入图片描述

来自@坏蛋:

在这里插入图片描述
在这里插入图片描述

来自@坏蛋:
在这里插入图片描述

来自@Nobita:

在这里插入图片描述
在这里插入图片描述

Java 版本
来自@小鸣:

@Test
public void test8(){
    /*
    * string="192.0.0.1?!289.0.0.1!0.0.0.0!192.163.10.28?192.0.0.1"
    * 要求:返回一个IP数组,并并且按ip最后一位排序返回。
    * */
    String ip_str = 
    "192.0.0.1?!289.0.0.1!0.0.0.0!192.163.10.28?192.0.0.1";
    String ip =
     "(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)”\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)";
    Pattern pattern = Pattern.compile(ip);
    Matcher matcher = pattern.matcher(ip_str);
    List<String> list = new ArrayList<String>();

    while(matcher.find()){
        String s=matcher.group();
        list.add(s);
    }
    Collections.sort(list, new Comparator<String>() {
        public int compare(String o1, String o2) {
                return o1.split("\\.")[3].compareTo(o2.split("\\.")[3]);
//                return 0;
        }
    });
    for(String ip1: list){
        System.out.println(ip1);
    }
}

@Test
public void test8(){
    /*
    * string="192.0.0.1?!289.0.0.1!0.0.0.0!192.163.10.28?192.0.0.1"
    * 要求:返回一个IP数组,并并且按ip最后一位排序返回。
    * */
    String ip_str = 
    "192.0.0.1?!289.0.0.1!0.0.0.0!192.163.10.28?192.0.0.1";
    String ip =
     "(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)”\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)\\.(25[0-5]|2[0-4]\\d|[0-1]\\d{2}|[1-9]?\\d)";
    Pattern pattern = Pattern.compile(ip);
    Matcher matcher = pattern.matcher(ip_str);
    List<String> list = new ArrayList<String>();

    while(matcher.find()){
        String s=matcher.group();
        list.add(s);
    }
    Collections.sort(list, new Comparator<String>() {
        public int compare(String o1, String o2) {
                return o1.split("\\.")[3].compareTo(o2.split("\\.")[3]);
//                return 0;
        }
    });
    for(String ip1: list){
        System.out.println(ip1);
    }
}

在这里插入图片描述


推荐阅读

高薪程序员也躲不过35岁这一关…当能力与年龄脱节,我们该如何自救

大学毕业开始销售…不甘于现状,转行测试的自救之路

从销冠到失业,最后选择软件测试,回头看看这段路,我很幸运!

 

这篇关于阿里大厂算法面试真题,你能答上来吗?(附答案)的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!