📜  沃尔玛全球技术代码她的 SDE-2 面试经验(2021)(1)

📅  最后修改于: 2023-12-03 15:11:03.635000             🧑  作者: Mango

沃尔玛全球技术代码她的 SDE-2 面试经验(2021)

介绍

在最近的沃尔玛全球技术的 SDE-2 面试过程中,面试者与面试官就丰富的程序设计和开发问题展开了互动。在本文中,我们将分享这位面试者的经验,并提供一些有用的提示和技巧,适用于SDE-2级别的面试。

细节
面试前的准备
  • 了解沃尔玛全球技术公司的业务和产品
  • 研究面试流程,了解面试者应该期望什么
  • 看到所有可能涉及到的技术含量,并了解如何在应用程序中使用它们
  • 实践计算机科学基础,例如数据结构,算法和编程语言
  • 熟悉仓库管理系统和设计模式
在面试官面前
  • 给面试官印象深刻的第一步是在面试期间保持职业形象
  • 尽可能加深面试官对你的理解和认知
  • 运用有效的沟通技巧和解释能力
  • 显示自己的技能
  • 需要有耐心,深入研究问题,考虑所有可能的解决方案
面试题目和解决方案
  • 随机比赛
  • 声明题
  • 十进制和二进制转换
  • 链表题

随机比赛

问题:设计一个程序,在比赛中随机选择两个不重复的名字。

解决方案:将人名添加到列表中。使用random.choice()方法从中随机选择2个。确保这些名字不会匹配。

import random
random_selections = random.sample(name_lst, 2)

声明题

问题:解释"所有男性都是父母"的声明。

解决方案:声明中的"父母"是一个集合,其中包括一组女性和一组男性。男性是集合的一部分,因此所有男性都是此声明中父母的一部分。

10进制和2进制转换

问题:编写一个程序,用于在10进制和2进制之间转换数字。

解决方案:创建两个功能,十进制到二进制和二进制到十进制的转换功能。

# 十进制转换二进制
def dec2bin(num):
    if num > 1:
        dec2bin(num // 2)
    print(num % 2, end='')

# 二进制转换十进制
def bin2dec(num):
    decimal, i = 0, 0
    while(num != 0):
        dec = num % 10
        decimal = decimal + dec * pow(2, i)
        num = num // 10
        i = i+1
    return decimal

链表题

问题:给定一个链表,请判断它是否有环.

解决方案:使用快慢指针法。将两个指针分别设置为每次移动一格和两格,如果存在环,则两个节点将相遇。

def hasCycle(head):
    if not head or not head.next:
        return False
    slow, fast = head, head.next
    while slow != fast:
        if not fast or not fast.next:
            return False
        slow = slow.next
        fast = fast.next.next
    return True
总结

在沃尔玛全球技术的SDE-2面试中,面试者需要展现出扎实的编程基础和技能,能够快速解决问题。此外,沟通和解释技巧也是至关重要的,能够让面试官更好地理解你的想法和解决方案。为了取得成功,面试者需要进行充分的准备和练习,熟悉相关技术和算法。