디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

자료구조 링크드리스트 예젠데 과정이 좀이해가안돼 ㅠㅠ

(211.217) 2010.10.07 12:53:55
조회 186 추천 0 댓글 6











우선 결과는 이렇게 나와

50   3   20   40  9   7
리스트의 총 길이는 6입니다.
20   40   7
리스트의 총 길이는 3입니다.


수업시간에 이 예제는 사실 빈칸채우기로 나왔었어
강의 들을 땐 대충 이런식으로 돌아가는구나하고
한절반은 채웠는데
풀예제 나와서 그거 치면서 이해하는 중이었거든..

근데 아... 한줄한줄 보니까 이해가 안돼네 ..

우선 main에서 최초에 node(3) 으로 생성하잖아?

node는 생성자 함수에있는것처럼 data_field 값 3으로 초기화 되고 link_field NULL로 초기화될테고..
그리고 node(3)은 그냥 넘어가잖아...

그담에 node(7) 만들어서 testnode 라는 임의 노드에 저장시켜주구..

문제는 다음부터야 ㅠㅠ

 head_ptr -> insert(testnode); 
에서 head_ptr이 insert함수를 가르키는데
여기 insert함수에서 우선 testnode... node(7) 값을 받잖아

그걸 인자로해서 set_link(this ->link()) 를 또 가르키는데

여기서 일단 set_link 함수인자로 보내줄려고 this ->link()를 보니까
link() 는 그냥 link_field 를 리턴시켜주는 함수이고 this 가 이걸 가르키니까

최초에 초기화된 그냥 NULL값이 들어가는거아니야??

그러니까 set_link 함수인자로 NULL이 들어가니까 link_field 세팅해주는 함수도 그냥 다 NULL이되구..
그렇게 되면 그냥 다 NULL값을 받을 것 같은데
이론 암만뒤져도 그림이랑 설명들어있는데 코드 한줄이 이해가안가니까 진도가안나가 ... ㅠㅠ

구조적으로 보면 노드 3 , 7, 9, 20 생성하고 50을 최초로 맞추고
링크 두번 건너뛰고 40으로 세팅해주는거 같은데 결과가 저렇게 나오는것도 이해안가고.... 아


출력해주는 length() 함수가 이거잖아

void node :: length()
{
 node* runner =this;
 int count =0;

 while(runner != NULL)
 {
  cout <<runner -> data() <<"   ";
  runner = runner ->link();
  count++;
 }
 cout <<"\\n리스트의 총 길이는 " <<count <<"입니다. \\n";
}

여기서도 runner =runner ->link() 이부분에
link 는 그냥 리턴만해주는 함수인데 증가값도 없는데 그냥 runner->link() 하면 그냥 계속 같은값만
리턴하게 되는거아닌가 싶고 다 꼬여버린느낌이네.. ㅠㅠ

형들 귀찮아도 ㅄ하나구제한다고 생각하고 설명좀 부탁할게 엉엉 ㅠㅠㅠㅠ






추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
등록순정렬 기준선택
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 축의금 적게 내면 눈치 줄 것 같은 스타는? 운영자 24/11/11 - -
211565 자바에서 final 제한자를 클래스에 상수로 지정하게 되면 ddd(175.195) 10.10.09 67 0
211564 컴공 박사따면 ... [3] 가방끈(124.153) 10.10.09 260 0
211563 윤성우 아저씨 자바 강의 공짜로 볼 수 있는 곳 [1] Ordinary Day갤로그로 이동합니다. 10.10.09 588 0
211562 횽들 이 코드 뭐가 잘못댄거야?? [1] ㅇㅇㅇ(59.25) 10.10.09 77 0
211561 ㅋㅋㅋㅋ아낰ㅋㅋ존나웃기네질문 [2] 프그갤(125.139) 10.10.09 77 0
211560 보조기억장치 = 피지컬메모리? [3] 지식왕(125.178) 10.10.09 129 1
211557 게시판 + 댓글 ERD 질문. 아으(168.131) 10.10.09 222 0
211556 pglex 프로그램 사용하긔~ [성대아싸]갤로그로 이동합니다. 10.10.09 104 0
211555 개발자로 입사했는데 짤릴 수 있나요? [3] 쏭사리(121.147) 10.10.09 166 0
211553 STL 벡터에 대해 잘아시는분? [3] ㅇㅇㅇ(121.128) 10.10.09 88 1
211552 내가 설계를 이상하게 한건가? ER WIN에서 표현을 못하는건가.. 횽.(168.131) 10.10.09 51 0
211550 이거 질문좀 할게 [1] 횽들(221.160) 10.10.09 52 0
211549 IOCP WSAEVENT 배열과 소켓배열을 이용하는 모델 [1] 미역c(210.119) 10.10.09 549 0
211548 질문드립니다요 ㅠㅠ [3] 프그갤(125.139) 10.10.09 63 1
211547 이클립스에서 컴파일 제외할때 어케썽 ㅎㅎ 홍홍(203.142) 10.10.09 174 0
211546 테이블 관계가 새발로 표현되는 툴 좀 알려줘.. [6] 횽.(168.131) 10.10.09 67 0
211545 형들 txt 에서 데이터 입력 받을라는데 [1] 회색사과갤로그로 이동합니다. 10.10.09 44 0
211544 횽. ERD 이렇게 그리면 처맞아? [2] 횽.(168.131) 10.10.09 102 0
211543 부울함수식 간략화하는건데 좀 도와주세요; [6] 논리설계(125.178) 10.10.09 347 3
211541 컴파일에 로더가 필요한이유가 [5] 지식왕(125.178) 10.10.09 136 0
211540 chart fx..구할수 있는 방법 좀 없을까? [1] 째비(221.161) 10.10.09 37 0
211539 산업기능요원이거나 이엇던 횽들 ?!! [2] 하앍하앍(123.199) 10.10.09 220 0
211537 뭘 하고 싶은 지 모르는 게 고민.. ㅜㅜ 하앍하앍(123.199) 10.10.09 48 0
211536 mysql 은 제약조건 못줌? [4] ㅇㅇㄹ(168.131) 10.10.09 178 0
211535 SICP나 LISP같은거 실무에서 많이 도움됩니까? 금호족기(61.75) 10.10.09 83 0
211533 pglex 프로그램 완성! 헤헤 [2] [성대아싸]갤로그로 이동합니다. 10.10.09 99 0
211532 다 됐고 이거하나만 정확하게좀 [3] 지식왕(125.178) 10.10.09 74 0
211531 어셈에서 swap함수,,,, 질문이요 [2] 망장군갤로그로 이동합니다. 10.10.09 121 0
211528 bit shift 연산인데 이해가 안되요 [6] 철수(122.199) 10.10.09 136 2
211527 [C++]요기서 뭐가 잘못돼서 이렇게되는거죠? (내공10만) [12] 씨발언어(165.132) 10.10.09 208 1
211526 로더가 무엇입니까? (내공 9999) [6] 지식왕(125.178) 10.10.09 166 0
211525 네트워크에 코드저장하는거 물어보니까 SVN을 얘기하던데 [4] URA!갤로그로 이동합니다. 10.10.09 74 1
211523 대딩 1학년인데 C언어나 포토샵같은거 배울때 [2] ㅁㄴㅇㄴㅇㅁ(211.209) 10.10.09 150 0
211522 강승윤탈락 시크한훈남갤로그로 이동합니다. 10.10.09 63 0
211521 씨언어 고수님들 저좀 도와주세요ㅜㅜ(2차수정)+사진첨부 [1] 씨발언어(165.132) 10.10.09 127 0
211520 자바에서 줄바꾸기 어떻게하나요 @@@@@@@@@@@@@@@@@@@@ [2] 이클립스(118.216) 10.10.09 297 1
211519 php 좀 아시는분 좀 봐주세요 [2] 레일리안(211.197) 10.10.09 100 1
211518 토요일엔 피아노를 배웁시다 돌아온탕자(211.234) 10.10.09 58 0
211517 순순히 댓글을 남기면 유혈사태는 일어나지 않을 것입니다. Ordinary Day갤로그로 이동합니다. 10.10.09 143 0
211516 나 혼자 감정에 복받쳐서 [1] Ordinary Day갤로그로 이동합니다. 10.10.09 81 0
211515 문자열을 반환하는 함수라는데 리턴값이 void인데 어떻게 된거죠??? [5] 컴돌이(125.188) 10.10.09 146 0
211514 아니면말고 횽아 있나염? [3] Minryu갤로그로 이동합니다. 10.10.09 76 0
211513 맥미니로 갈아탈까? ㅇㅇ(168.131) 10.10.09 64 0
211512 프로그래밍 처음 배우는.. c언어 [6] 고딩(118.45) 10.10.09 179 2
211511 프로그래밍 갤러린데 이런거 질문해도 되나 [2] 니니니닝갤로그로 이동합니다. 10.10.09 96 0
211509 형들 근로 소득세 구하는 프로그램 과제인데.. [3] (121.128) 10.10.09 85 0
211505 임베디드 개발자로서 연봉 6000정도 받으려면 어떻게 해야함? [4] 쏭사리(121.147) 10.10.09 772 0
211503 프로그래머 종류중에 수명 제일 긴건 머임?? [2] 고칼로리갤로그로 이동합니다. 10.10.09 313 1
211502 형들 도움좀 조공있어 c언어 [5] (121.128) 10.10.09 289 1
211498 지식경제부에서 주최하는 무료 리눅스 교육이다. 관심 있으면 신청해라 [2] ㅁㅁ(175.124) 10.10.09 134 1
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2