inflearn logo
강의

Khóa học

Chia sẻ kiến thức

C ngôn ngữ cho những người học nghiêm túc về cấu trúc dữ liệu tuyến tính

Stack và Queue

스택의 POP코드 질문드립니다.

Đã giải quyết

259

vhftmaltm126401

10 câu hỏi đã được viết

0

안녕하세요 오랜만에 질문드립니다.

현재 가정을 헤드노드->Test03->Test02->Test01->테일노드 이렇게 있다고 가정을 했을 때

pPop->pNext->pPrev = g_TailNode.pPrev; 이 코드에서 질문있습니다.

제가 이해한것을 풀어쓰느라 조금 길거 같습니다.

흐름상 pop 구조체 포인터가 Test03노드를 가리키고 있고 헤드의 다음노드를 Test02로 바꾸는것까지 이해했습니다.

그다음 pop 다음 노드의 이전 노드 즉 Test02의 이전 노드가 테일 노드의 이전 노드를 가리킨다고 하는데 현재 흐름 상 보면 Test03의 다음노드의 이전노드가 Test01노드라고 하는걸로 해석이 됩니다.

제가 어느 부분에서 이해를 못한 건지 모르겠습니다.

그리고 다음 코드를 이렇게 고쳐도 출력에는 이상이 없는 것으로 확인됩니다.

c 코딩-테스트 알고리즘 vc++

Câu trả lời 1

0

nullnull8537

스택에 노드가 하나 뿐이면 모르겠지만 pPop->pNext 노드가 Test03의 다음 노드가 될 수 있는데 그렇다면 Test02가 되어야 하겠습니다. 그런데 그것이 g_TailNode와 관련이 있을 수도 있고 아닐 수도 있습니다. 즉, 스택에 더 꺼낼 노드가 남아 있다면 g_TailNode가 바로 등장할 이유는 없겠습니다.

그리고 출력에 이상이 없다고 했는데...

Test03->Test02->Test01 이렇게 세 노드가 있는 상태에서 데이터를 하나 Pop한 후 출력해보시기 바랍니다. 아마도 유실되는 노드가 있을 것입니다. 이에 관한 문제의 원인을 찾아 분석해보시기를 권합니다. 😄

05_adtFileIO 개정이력에 대한 질문

0

42

2

마지막 열의 노드를 삭제하였을때 읽기 엑세스 위반 발생 건

0

61

2

첫번째 루프에서 최소값을 못찾았는데 계속 진행하는 이유가 무엇인가요?

0

47

1

[질문]: [섹션4] -> [2중 연결 리스트로 전환] -> [21:30]

0

130

2

인덱스정렬 강의, 04_ListAndIndex질문드립니다.

0

125

1

예제는 어디서 다운로드 받을 수 있나요?

0

178

2

04_MultiIndex 예제에서 질문이 있습니다

0

120

1

헤드노드에 관해..

0

231

3

AddNewNode 함수 구현시 질문입니다.

0

160

2

Event Loop

0

191

1

인덱스정렬 강의, 04_ListAndIndex질문드립니다.

0

192

1

CPU의 다른 이름 Machine 강의 질의

0

273

4

adtFileIO 예제코드관련 질문 있습니다.

0

170

1

ADT강의 관련 질문 있습니다.

0

231

2

RangeSearch002 의 singlelist.c 파일 중 질문 있습니다.

0

192

1

섹션4 자료 자체와 정렬된 인덱스 분리 내용 질문

0

252

2

자료 자체와 정렬된 인덱스 분리 강의에서 질문

0

234

2

구현 연습에 대한 개인적 의문

0

279

1

05_adtFileIO 프로젝트 문의

0

318

2

CLI UI적용 강의에서 질문드립니다.

0

333

1

SearchToRemove와 RemoveNode가 분리되어야 할 필요가 있을까요?

0

293

1

05_adtFileIO 프로젝트 문의

0

257

1

자료 자체와 정렬된 인덱스 분리 (인덱스 정렬) - 인덱스 범위 코드에 버그가 있어서 질문 드립니다.

0

304

2

강의자료 관련

0

203

1