<p><it>Abstract—</it>We study the problem of running full binary tree based algorithms on a hypercube with faulty nodes. The key to this problem is to devise a method for embedding a full binary tree into the faulty hypercube. Based on a novel embedding strategy, we present two results for embedding an $<tmath>(n - 1)</tmath>$-tree (a full binary tree with $<tmath>2^{n-1} - 1</tmath>$ nodes) into an $<tmath>n</tmath>$-cube (a hypercube with $<tmath>2^n</tmath>$ nodes) with unit dilation and load. For the problem where the root of the tree must be mapped to a specified hypercube node (<b><it>specified root embedding problem</it></b>), we show that up to $<tmath>n - 2</tmath>$ (node or edge) faults can be tolerated. This result is optimal in the following sense: 1) it is time-optimal, 2) $<tmath>(n - 1)</tmath>$-tree is the largest full binary tree that can be embedded in an $<tmath>n</tmath>$-cube, and 3) $<tmath>n - 2</tmath>$ faults is the maximum number of worst-case faults that can be tolerated in the specified root problem. Furthermore, we also show that any algorithm for this problem cannot be totally recursive in nature. For the problem where the root can be mapped to any nonfaulty hypercube node (<b><it>variable root embedding problem</it></b>), we show that up to $<tmath>2n - 3 - \lceil\log n\rceil</tmath>$ faults can be tolerated. Thus we have improved upon the previous result of $<tmath>n - 1 - \lceil\log n \rceil.</tmath>$ In addition, we show that the algorithm for the variable root embedding problem is optimal within a class of algorithms called <b><it>recursive embedding</it></b> algorithms as far as the number of tolerable faults is concerned. Finally, we show that when an $<tmath>O(1/\sqrt{n})</tmath>$ fraction of nodes in the hypercube are faulty, it is not always possible to have an $<tmath>O(1)</tmath>$-load variable root embedding no matter how large the dilation is.</p><p><it>Index Terms—</it>Embedding, hypercubes, full binary trees, dilation, simulation, faulty architecture.</p>