c언어 연결리스트 삽입, 삭제 코드 질문
-
게시물 수정 , 삭제는 로그인 필요
강의 교안인데요...잘 이해가 안 가는 부분이 있네요.
1. insert 시에는 previousPtr을 NULL로 currentPtr을 *sPtr로 초기화하고 delete시에는 각각 *sptr, (*sptr)->nextPtr로 초기화하는데 특별한 이유가 있나요? 서로 초기화하는게 다른데 이해가 잘 안 가서요
2. insert시에 109번줄에서 newPtr->nextptr = *sPtr; 이 구문은 굳이 꼭 필요한건가요?
*sPtr(head포인터를 가리키는 더블 포인터)이 newPtr이 가리키는 곳을 가리켜야 한다는 건 이해가 가는데 newPtr->nextPtr = *sPtr 이건 왜 하는지 잘 이해가 안 가서요
3. delete시에 132번줄 *sPtr = (*sptr)->nextptr; 이 구문도 꼭 필요한 건가요? 어차피 삭제할 노드는 저장했고 나중에 free할텐데 왜 *sPtr을 옮기는지 잘 납득이 안 가네요
헤드포인터가 망가질까봐 그런건가요?
#c언어 연결리스트 #c언어 연결리스트 구현 #c언어 연결리스트 예제 #c언어 연결리스트 노드 추가 #c언어 연결리스트 오름차순 정렬 #c언어 연결리스트 삭제 #c언어 연결리스트 출력 #c언어 연결리스트 정렬 #c언어 연결리스트 노드 삭제 #c언어 연결리스트 검색