Удалить пробел с последнего числа в С++

Я пытаюсь написать программу о восстановлении двоичного дерева поиска из обхода в порядке и прямом порядке, а затем вывести дерево в обратном порядке, мне нужно удалить пустое пространство после того, как последний элемент из моего дерева будет напечатан, но я не совсем уверен, как это сделать .

Мой почтовый код:

    void postorder(Node* root) 
{
    if (root == nullptr) {
        return;
    }
    postorder(root->left);
    postorder(root->right);
    cout << root->data << " ";
}

Предположим, что вывод равен 4_5_2_3_1, где _ — это пробел между числами ( ), но теперь мой вывод равен 4_5_2_3

    void postorder(Node* root) 
{
    if (root == nullptr) {
        return;
    }
    postorder(root->left);
    postorder(root->right);
    cout << root->data << " ";
}
(лишний пробел после 1), как его удалить?


person Carnarvon    schedule 20.11.2020    source источник
comment
Вы не печатаете пробелы после символов, так же как не ставите запятые после слов. Что вы на самом деле делаете, так это ставите их перед. Первый элемент в списке — единственный, перед которым нет запятой.   -  person enhzflep    schedule 20.11.2020