Programming/C C++
[DS] Delete a Node
ElAsJay
2020. 9. 20. 05:59
728x90
www.hackerrank.com/challenges/delete-a-node-from-a-linked-list/problem
position이 주어지고 해당 position의 노드를 삭제하는 코드를 작성해야 한다.
SinglyLinkedListNode* deleteNode(SinglyLinkedListNode* head, int position) {
SinglyLinkedListNode* temp = head;
SinglyLinkedListNode* tmp;
if(position == 0)
{
head = head->next;
return head;
}
for(int i=0;i<position-1;i++){
temp = temp->next;
}
tmp = temp->next;
temp->next = tmp->next;
free(tmp);
return head;
}
△ 작성한 부분
항상 모든 경우에 대비하는 코드를 작성해야 함을 잊지말자..
0번 position 즉, head 노드를 삭제할 경우에는 더 간단하게 끝난ㄴ다.
SMALL