📜  MAQ 软件面试体验(校内)(1)

📅  最后修改于: 2023-12-03 14:44:08.894000             🧑  作者: Mango

MAQ 软件面试体验(校内)

简介

MAQ 软件是一家专注于大数据处理和人工智能领域的公司,招聘的人才涵盖数据工程师、算法工程师、前端开发工程师等多个职位。在校内举办的面试中,以笔试和面试的形式进行筛选。

笔试

笔试的内容主要有两部分,第一部分是选择题和判断题,测试应聘者的基础知识水平;第二部分是编程题,测试应聘者的编程能力。编程题难度中等,主要考察应聘者算法设计和实现能力。

笔试时间为2小时,需要应聘者自备笔记本电脑进行编程题。

代码片段

以下为笔试题目的代码片段示例:

编程题

# 题目:给定一个字符串 s,找到 s 中最长的回文子串。可以假设 s 的最大长度为 1000。

class Solution:
    def longestPalindrome(self, s: str) -> str:
        n = len(s)
        dp = [[False] * n for _ in range(n)]
        ans = ""
        # 枚举子串长度 l+1
        for l in range(n):
            # 枚举子串起始位置 i,这样可以通过 j=i+l 得到子串的结束位置
            for i in range(n):
                j = i + l
                if j >= n:
                    break
                if l == 0:
                    dp[i][j] = True
                elif l == 1:
                    dp[i][j] = (s[i] == s[j])
                else:
                    dp[i][j] = (dp[i+1][j-1] and s[i] == s[j])
                if dp[i][j] and l + 1 > len(ans):
                    ans = s[i:j+1]
        return ans
面试

面试时间大约为1小时,包括技术面试和HR面试。技术面试主要考察应聘者的专业技能,如数据结构、算法、数据库等;HR面试主要考察应聘者的综合素质和个人特点,如沟通能力、职业规划等。

在技术面试中,面试官会询问应聘者在学校或实习中的项目经历和工作经历,并会问一些相关的问题。如果应聘者表现出色,有机会获得offer。

代码片段

以下是面试中可能会遇到的代码片段示例:

技术面试

# 题目:写一个函数,通过遍历输入的文件夹及其子文件夹,返回其中包含关键字的文件列表

import os

def search_files(path, keyword):
    files = []
    for root, dirs, filenames in os.walk(path):
        for filename in filenames:
            if keyword in filename:
                files.append(os.path.join(root, filename))
    return files
总结

MAQ 软件的面试体验相对来说比较正规和严谨,需要应聘者具备扎实的基础知识和编程能力。希望本文能够对准备参加MAQ校内面试的程序员们有所帮助。