링크드 리스트 질문 드립니다.
216
投稿した質問数 2
while (search->next != NULL) search = search->next; search->next = new_node; new_node->next = NULL;
이코드에서 search가 마지막 노드의 주소를 가지고 있고, 그래서 next에 new_node의 주소를 넘겨주는 것과 무슨 차이가 있는지 모르겠습니다. 아래코드는 정상 작동하고 위에 코드가 작동하지 않습니다.
回答 1
0
안녕하세요? 질문을 해당 강의에서 하신 것은 아니시지만 워낙 질문이 적은 강의이고 구체적인 답변을 드릴 상황은 아니라서 대략 설명 드리겠습니다.
traversal을 할 때 대부분의 경우 두 가지의 while 경우에 대해서 모두 구현을 하실 수 있습니다.다만 현 시점에서 고래님께서 생각하셔야할 점은 왜 작동해야할 것 같은데 작동하지 않는가?를 해결하셔야 합니다. 일단 이런 의문을 갖고 시작하신 것은 좋은 접근방법입니다.
자료구조 공부는 제가 각 경우에 대해서 설명드리는 것은 별로 도움이 되지 않습니다. 만약 그랬다면 while 문 안에서는 ~~하게만 써야해요라고 강의에서 설명을 드렸을 겁니다. 그보다는 왜 내 생각과 실제 결과가 다른지를 끈질기게 추적해서 원인을 찾아내셔야 합니다. 한 두 번만 그런 과정을 거치시면 이후에는 자신감이 급상승할겁니다.
방법은 의외로 간단합니다. search, new_node, new_node->next 등 필요한 주소들을 전부 출력해서 왜 문제가 생기는지 이유를 찾아보는 것입니다. 조금 능숙해지시면 굳이 출력하지 않고 디버거 사용하셔도 됩니다.
다시 말씀드리지만, 기초 문법 강의 이후 자료구조 부터는 왜 내 생각대로 작동하지 않는지 확인하시는 것에 조금 더 노력을 기울이시기를 권장합니다.
다시 시도해보시고 너무 힘들면 다시 해당 강의 질문에 문의주세요.
0
답변 감사합니다! 직접 답변해주실지 몰라서 놀랐습니다. 말씀하신데로 더 끈기있게 뭐가 문제인지 찾아보겠습니다. 감사합니다! 지금 C언어 후 부록강의를 수강하고 있는데 정말 도움이 많이 되고 있습니다. C++강의도 수강 예정입니다. 앞으로도 좋은 강의 많이 찍어주시면 감사하겠습니다.
안녕하세요. 계속 프로젝트를 해야지 하다가 결제하고 환경 설정 중입니다.
0
14
1
Export template 안됨
1
26
2
scanf("%d\n") 의미
0
20
1
필기자료 사라졌나요?(실기 일주일만에 안돼서 재도전-_-)
0
37
2
26년 1회 실기 해설 강의
0
51
2
주소 연산자(&) 간접 지정자(*) 반대 개념
0
33
1
이진 탐색: 탐색 실패하는 경우 어째서 first > last인 경우가 나오나요?
0
324
1
17.12) access violation
0
307
1
finditembyindex 질문드립니다!
0
348
1
19:20 부분에서 질문있습니다.
0
278
1
pnode = pnode->next; 와 pnode->next = pnode;는 같은 것으로 생각해도 될까요?
0
401
2
질문. warning뜨는 이유
0
301
1
함수포인터 질문드립니다
0
224
1
강의 내용 질문 드립니다!
0
369
2
노드 주소 순서 관련 질문
0
282
1
질문드립니다!
0
242
1
DeleteAllNodes 에서 질문있습니다.
0
375
5
16:30 질문입니다.
0
343
4
scanf 질문이요!!
0
253
1
12:30 의 ArrayQueue.h
0
292
2
10:10 Add front에서 질문드립니다.
1
362
1
스택 자료구조
0
246
1
변수 count의 활용에 대해 질문이 있습니다.
0
320
1
1번 실행하면 에러가 뜨는데 이유를 모르겠습니다..
0
371
2

