Warum erhalte ich "Zeitlimit überschritten" Fehler in der Reisungsprobleme der Binärbaumebene in Leetcode?Java

Java-Forum
Anonymous
 Warum erhalte ich "Zeitlimit überschritten" Fehler in der Reisungsprobleme der Binärbaumebene in Leetcode?

Post by Anonymous »

Ich versuche, das Problem zu lösen: Binärer Auftragsverlustproblem auf Leetcode und ich habe auch versucht, nach den Antworten zu suchen, aber ich erhalte immer noch ein Zeitlimit übersteht (tle) Fehler. Bitte helfen Sie mir, herauszufinden, was schief geht. Ich verwende Java, um dieses Problem zu lösen. . (d.h., von links nach rechts, Ebene nach Ebene). Binärer Baum "src =" https://i.static.net/usgkmced.png "/>
Eingabe: root = [3,9,20 , null, null, 15,7]

Ausgabe: [[3], [9,20], [15,7]]
Beispiel 2:
Eingabe: root = [1]

Ausgabe: [[1]]
Beispiel 3:
Eingabe: root = []

Ausgabe: [] < /p>
Einschränkungen: < /strong> < /p>
  • Die Anzahl der Knoten im Baum liegt im Bereich [0) , 2000] .
  • Code: Select all

    -1000 .
    Und hier ist mein Code für dasselbe Problem: < /p>
    [code]class Solution {
    public List levelOrder(TreeNode root) {
    List result = new ArrayList();
    if(root == null){
    return result;
    }
    Queue q = new LinkedList();
    q.offer(root);
    while(!q.isEmpty()){
    List level = new ArrayList();
    int size = q.size();
    for(int i = 0; i < size; i++){
    level.add(q.peek().val);
    q.poll();
    if(root.left != null){
    q.offer(root.left);
    }
    if(root.right != null){
    q.offer(root.right);
    }
    }
    result.add(level);
    }
    return result;
    }
    }
    

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post