Câu hỏi phỏng vấn Data Structures
Câu hỏi

In chế độ xem bên trái củ...

Câu trả lời

Ý tưởng chính để giải quyết vấn đề này là duyệt cây theo tiền thứ tự và truyền thông tin về cấp bậc cùng với nó. Nếu cấp được truy cập lần đầu tiên, thì chúng ta lưu trữ thông tin của nút hiện tại và cấp hiện tại trong hashmap. Về cơ bản, thì ta đang có được chế độ xem bên trái bằng cách quan sát đến nút đầu tiên của mọi cấp độ.
Khi kết thúc quá trình duyệt, chúng ta có thể tìm ra giải pháp bằng cách duyệt qua map.

Hãy xem xét cây sau đây làm ví dụ để tìm chế độ xem bên trái:

In chế độ xem bên trái của bất kỳ cây nhị phân nào

Code Java:

java Copy
import java.util.HashMap;

//to store a Binary Tree node
class Node
{
    int data;
    Node left = null, right = null;

    Node(int data) {
        this.data = data;
    }
}
public class InterviewBit
{
    // traverse nodes in pre-order way
    public static void leftViewUtil(Node root, int level, HashMap<Integer, Integer> map)
    {
        if (root == null) {
            return;
        }

        // if you are visiting the level for the first time
        // insert...
senior

senior

Gợi ý câu hỏi phỏng vấn

junior

Có những loại Linked Lists nào?

senior

Sự khác biệt giữa cấu trúc dữ liệu cây và đồ thị

junior

Tại sao và khi nào tôi nên sử dụng cấu trúc dữ liệu Stack hoặc Queue thay vì Arrays/Lists?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào