728x90
난이도 중
역순 연결리스트 만들기
코드
/* Linked List Node structure:
struct Node
{
int data;
struct Node *next;
}
*/
class Solution
{
public:
//Function to reverse a linked list.
struct Node* reverseList(struct Node *head)
{
Node* p, *q, *r;
p = head; // 전체 리스트 탐색용
q = NULL; // 역순 리스트의 head노드
if(p==NULL) return p;
while(p!=NULL){ // 리스트를 하나씩 탐색
r = q; // r을 q로 만듬
q = p; // p를 q로만듬(p는 다음을 탐색해야해서 하면 없어지니깐)
p = p->next; //리스트의 다음을 탐색
q->next=r; // 역순연결
}
return q; //역순 리스트의 head
}
};
728x90
'Algorithm > 기타(기업등)' 카테고리의 다른 글
[SAP/C++] BST from postorder (0) | 2021.04.24 |
---|---|
[SAP/C++] Mirror Tree (0) | 2021.04.24 |
[SAP/C++]Check Circular Linked List (0) | 2021.04.22 |
[SAP/C++] Remove Space (0) | 2021.04.21 |
[SAP/C++] Smallest Divisor (0) | 2021.04.21 |