1. A method for detecting a space-time block code, the method comprising: randomly selecting one initial candidate layer (x N ) with respect to a signal vector {tilde over (y)}; applying a DF algorithm to first J number of layers (x N-1 , x N-2 ,. .. , x N-J ) with respect to each of all the available candidate symbols within the initial candidate layer (x i ) to generate candidate symbols of each of the J number of layers; re-arranging the J number of layers; selecting the lowest layer of the re-arranged J number of layers as a new candidate layer; performing a DF process on the other remaining layers, excluding the new candidate layer, to generate N-dimensional candidate symbol vectors x i ; and performing a maximum likelihood detection on the x i to detect an N-dimensional input vector {circumflex over (x)}.