华为OD机试-2024年C卷&D卷真题汇总(Java/Python/C++)
原创
华为OD机试-2024年C卷&D卷真题汇总
以下是2024年华为OD机试C卷和D卷的部分真题汇总,包括Java、Python和C++三种编程语言。
C卷真题
题目1:字符串匹配
给定一个字符串s和一个字符串数组words,找出所有在s中的words中的单词,返回它们的起始索引。
// Java代码示例
public List
findSubstring(String s, String[] words) { // ...
}
题目2:链表合并
给定两个有序链表的头节点head1和head2,将它们合并为一个有序链表并返回头节点。
// Python代码示例
def mergeTwoLists(self, head1: Optional[ListNode], head2: Optional[ListNode]) -> Optional[ListNode]:
# ...
D卷真题
题目3:二叉树遍历
给定一个二叉树的根节点root,实现前序、中序和后序遍历,返回遍历导致。
// C++代码示例
vector
preorderTraversal(TreeNode* root) { // ...
}
vector
inorderTraversal(TreeNode* root) { // ...
}
vector
postorderTraversal(TreeNode* root) { // ...
}
题目4:数组去重
给定一个整数数组nums,移除重复元素,使每个元素只出现一次,并返回新的数组长度。
// Java代码示例
public int removeDuplicates(int[] nums) {
// ...
}
以上仅展示了部分真题,愿望对参加华为OD机试的同学们有所帮助。