An apparatus adapted to facilitate frequency hopping for single carrier FDMA communication, comprising: means for generating (1002, 1202) an offset at a user device, wherein the offset corresponds to a value of a node in a channel tree and wherein the channel tree has a plurality of nodes and wherein the user device employing an IFDMA communication protocol and; means for assigning (1004, 1204) the value of the node utilizing the channel tree, wherein the means for assigning the value of the node utilizing the channel tree comprises: means for reading the channel tree along a path from a node assigned to the user device to a first child node of a root node in the channel tree or reading the channel tree along a path from a first child node of a root node to a node assigned to the user device in the channel tree; and means for evaluating a value for the path; means for alternating the offset between at least two user devices when the at least two user devices are assigned the same offset; and means for varying (1010, 1208) the offset according to a predetermined pattern, wherein the offset corresponds to a set of subcarriers within a plurality of subcarriers and wherein the varied offset corresponds to a different set of subcarriers within the plurality of subcarriers, wherein the means for assigning the value of the node utilizing the channel tree comprises: means for reading the channel tree in an upward direction to determine an offset assignment. means for generating (1002, 1202) an offset at a user device, wherein the offset corresponds to a value of a node in a channel tree and wherein the channel tree has a plurality of nodes and wherein the user device employing an IFDMA communication protocol and; means for assigning (1004, 1204) the value of the node utilizing the channel tree, wherein the means for assigning the value of the node utilizing the channel tree comprises: means for reading the channel tree along a path from a node assigned to the user device to a first child node of a root node in the channel tree or reading the channel tree along a path from a first child node of a root node to a node assigned to the user device in the channel tree; and means for evaluating a value for the path; means for alternating the offset between at least two user devices when the at least two user devices are assigned the same offset; and means for reading the channel tree along a path from a node assigned to the user device to a first child node of a root node in the channel tree or reading the channel tree along a path from a first child node of a root node to a node assigned to the user device in the channel tree; and means for evaluating a value for the path; means for alternating the offset between at least two user devices when the at least two user devices are assigned the same offset; and means for varying (1010, 1208) the offset according to a predetermined pattern, wherein the offset corresponds to a set of subcarriers within a plurality of subcarriers and wherein the varied offset corresponds to a different set of subcarriers within the plurality of subcarriers, wherein the means for assigning the value of the node utilizing the channel tree comprises: means for reading the channel tree in an upward direction to determine an offset assignment. means for reading the channel tree in an upward direction to determine an offset assignment.