Computer >> 컴퓨터 >  >> 프로그램 작성 >> C++

C++ 프로그래밍에서 연결 목록을 삭제하는 함수 작성

<시간/>

여기에서는 연결 리스트의 모든 요소를 ​​하나씩 삭제하는 함수를 만들 것입니다.

c/c++에서는 이 작업을 수행하는 특정 기능이 없지만 Java에서는 자동 가비지 컬렉션을 수행하여 연결 목록을 쉽게 삭제할 수 있습니다.

이제 이 프로그램의 구현을 살펴보겠습니다.

예시

#include <iostream>
using namespace std;
class Node{
   public:
   int data;
   Node* next;
};
void deleteLinkedList(Node** head_ref){
   Node* current = *head_ref;
   Node* next;
   while (current != NULL){
      cout<<current->data<<"\t";
      next = current->next;
      free(current);
      current = next;
   }
   *head_ref = NULL;
}
void push(Node** head_ref, int new_data){
   Node* new_node = new Node();
   new_node->data = new_data;
   new_node->next = (*head_ref);
   (*head_ref) = new_node;
}
int main(){
   Node* head = NULL;
   push(&head, 25);
   push(&head, 10);
   push(&head, 5);
   push(&head, 90);
   push(&head, 68);
   cout<<"Elements of linked list : ";
   deleteLinkedList(&head);
   cout << "\nLinked list deleted";
}

출력

Elements of linked list : 68 90 5 10 25
Linked list deleted