def __create_queue(self):
self.__queue = [cure_cluster(self.__pointer_data[index_point], index_point) for index_point in range(len(self.__pointer_data))]<EOL>for i in range(<NUM_LIT:0>, len(self.__queue)):<EOL><INDENT>minimal_distance = float('<STR_LIT>')<EOL>closest_index_cluster = -<NUM_LIT:1><EOL>for k in range(<NUM_LIT:0>, len(self.__queue)):<EOL><INDENT>if i != k:<EOL><INDENT>dist = self.__cluster_distance(self.__queue[i], self.__queue[k])<EOL>if dist < minimal_distance:<EOL><INDENT>minimal_distance = dist<EOL>closest_index_cluster = k<EOL><DEDENT><DEDENT><DEDENT>self.__queue[i].closest = self.__queue[closest_index_cluster]<EOL>self.__queue[i].distance = minimal_distance<EOL><DEDENT>self.__queue.sort(key = lambda x: x.distance, reverse = False)<EOL>
!
        @brief Create queue of sorted clusters by distance between them, where first cluster has the nearest neighbor. At the first iteration each cluster contains only one point.

        @param[in] data (list): Input data that is presented as list of points (objects), each point should be represented by list or tuple.

        @return (list) Create queue of sorted clusters by distance between them.