华为面经系列01

华为面经

主要用于面试准备环节。有些忘记标明出处了。

华为通用软件面经

一面 1h
自我介绍

问编程竞赛经历 (要回忆获奖比赛中的题目)

问实习遇到的问题(挤出3个)

循环队列判满判空方法

两个指针,头和尾,head,tail 如果 (head+1)%len = tail 表示满了。

dfs和bfs流程和各自应用场景

dfs:深度优先搜索
bfs:广度优先搜索
应用场景:dfs一般用于搜索有所答案。bfs的话一般用于搜索最短的路径答案。当然2者都可以使用。

括号匹配手撕
20. 有效的括号

func isValid(s string) bool {
    n := len(s)
    if n <= 1 {
        return false
    }
    str := []byte{'(', ')', '{', '}', '[', ']'}
    stack := make([]byte, 0)
    for i := 0; i < n; i++ {
        if s[i] == str[0] || s[i] == str[2] || s[i] == str[4] {
            stack = append(stack, s[i])
        } else {
            if len(stack) == 0 {
                return false
            }
            ch := stack[len(stack)-1]
            stack = stack[:len(stack)-1]
            for j := 0; j < 3; j++{
                if s[i] == str[j*2+1] && ch != str[j*2] {
                    return false
                }
            }
        }
    }
    if len(stack) > 0 {
        return false
    }
    return true
}

华为暑假实习面经

一、技术面(30min)
问了一下项目的具体内容

不赘述

c++类中的虚函数

不是学c++的不回答

c++对于内存的分配(堆/栈)

同上一问

TCP/UDP的区别

这个可好好好回答一下,主要从TCP是可靠于UDP不是可靠的去回答。
TCP:面向连接的可靠交付,以字节流传输,效率低,耗费资源少,适用于对通信数据严格的场景,如文件传输。首部20-60字节。
UDP:无连接的尽最大努力交付,以数据报文段传输,速度快,耗费资源少,适用于对通信速度要求高的场景,如在线视频。首部8个字节。

手撕:识别包含(),{}的字符串是否能配对(和leetcode上面的题差不多

func isValid(s string) bool {
    n := len(s)
    if n <= 1 {
        return false
    }
    str := []byte{'(', ')', '{', '}', '[', ']'}
    stack := make([]byte, 0)
    for i := 0; i < n; i++ {
        if s[i] == str[0] || s[i] == str[2] || s[i] == str[4] {
            stack = append(stack, s[i])
        } else {
            if len(stack) == 0 {
                return false
            }
            ch := stack[len(stack)-1]
            stack = stack[:len(stack)-1]
            for j := 0; j < 3; j++{
                if s[i] == str[j*2+1] && ch != str[j*2] {
                    return false
                }
            }
        }
    }
    if len(stack) > 0 {
        return false
    }
    return true
}

二、主管面(30min)

感觉这面试怎么这么快啊?二面直接就主管面试了。下面的题可以自己准备一下如何回复。

项目内容/难点/怎么解决/是否能优化

为什么选择华为

在校的社团/班干经历

如何平衡学习和竞赛

遇到什么努力很久但是没有实现的事情

最近读过的技术书/书

华为压力比较大,家人对于来华为工作的想法

自己能给华为带来什么