Програма С++ : Создайте односвязный список элементов типа CHAR. Удалите из списка все символы, не являющиеся буквой латинского алфавита.

22 Сен 2019 в 06:42
160 +1
0
Ответы
1
include

struct Node {
char data;
Node* next;
};

void deleteNonAlphabetic(Node head) {
Node current = head;
Node* prev = nullptr;

while (current != nullptr) {
if (!isalpha(current->data)) {
Node* temp = current;
if (prev == nullptr) {
head = current->next;
current = head;
} else {
prev->next = current->next;
current = current->next;
}
delete temp;
} else {
prev = current;
current = current->next;
}
}

}

int main() {
Node* head = new Node;
head->data = 'a';
head->next = new Node;
head->next->data = 'b';
head->next->next = new Node;
head->next->next->data = '1';
head->next->next->next = new Node;
head->next->next->next->data = 'c';
head->next->next->next->next = nullptr;

deleteNonAlphabetic(head);
Node* current = head;
while (current != nullptr) {
std::cout << current->data << " ";
current = current->next;
}
return 0;

}

19 Апр 2024 в 20:23
Не можешь разобраться в этой теме?
Обратись за помощью к экспертам
Гарантированные бесплатные доработки в течение 1 года
Быстрое выполнение от 2 часов
Проверка работы на плагиат
Поможем написать учебную работу
Прямой эфир