📅  最后修改于: 2023-12-03 15:14:17.127000             🧑  作者: Mango
Crest Data Systems 是一家专注于数据管理和分析的公司,提供从数据采集到数据可视化的一系列解决方案。在 SDE 面试中,他们主要关注面试者的编程能力和算法实现能力,以及对数据结构和计算机基础知识的掌握程度。
第一轮面试主要考察编程语言的基础知识和编程能力,可能会要求在编程环境下编写一些小程序或者解决一些简单的编程问题。
代码片段:
def add_nums(nums):
res = 0
for num in nums:
res += num
return res
nums = [1, 2, 3, 4, 5]
print(add_nums(nums)) # 15
第二轮面试注重算法实现能力,面试者会被要求解决一些基于数据结构和算法的问题,如链表操作、树的遍历、查找等等。
代码片段:
class ListNode:
def __init__(self, val=0, next=None):
self.val = val
self.next = next
def reverse_list(head: ListNode) -> ListNode:
prev = None
curr = head
while curr:
next_node = curr.next
curr.next = prev
prev = curr
curr = next_node
return prev
第三轮面试主要涵盖系统设计和数据库设计,以及对数据结构和计算机基础知识的整体掌握程度。面试者需要设计一个简单的系统,实现某个功能,例如爬虫抓取网站上的信息并进行数据分析和可视化等等。
代码片段:
# 爬取网页代码省略
import pandas as pd
import matplotlib.pyplot as plt
# 数据分析代码省略
# 数据可视化
plt.plot(x_data, y_data)
plt.show()
Crest Data Systems SDE 面试主要针对面试者的编程能力、算法实现能力、系统设计和数据库设计等方面的能力进行考察。面试者需要具备扎实的编程基础,熟练掌握数据结构和算法,并且能够独立完成简单的项目或者系统设计。