inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

독하게 C를 배운 사람을 위한 선형 자료구조

삭제 및 결과 검증 코드 작성

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

해결된 질문

293

이이이이잉잉이

작성한 질문수 4

0

RemoveNode를 직접 먼저 구현한 후 강의를 듣게 되었는데요,
저는 RemoveNode 안에 Search하는 코드를 통합해서 짰는데 SearchToRemove가 RemoveNode를 실행시키기 위해서만 필요하다면 굳이 분리를 해야 할까 하는 의문이 들었습니다.

하나의 함수는 하나의 동작만 실행해야 해서 분리가 된 것일까요? 아니면 SearchToRemove가 나중에도 사용이 될 가능성이 있어서 분리된 것일까요?

제가 작성한 코드를 첨부합니다.


void RemoveNode(const char* pszName)
{
  USERDATA* pTmp = g_pHeadNode;
  USERDATA* previousNode = NULL;
  bool isFound = false;
  // 노드 찾기
  while (pTmp != NULL)
  {
    if (strcmp(pTmp->name, pszName) == 0)
    {
      isFound = true;
      break;
    }
    previousNode = pTmp;
    pTmp = pTmp->pNext;
  }
  // 노드 찾기 실패
  if (isFound == false)
  {
    printf("\"%s\" : Not Found, remove failed.\n", pszName);
    return;
  }
  // 헤드인 경우
  if (g_pHeadNode == pTmp)
  {
    g_pHeadNode = pTmp->pNext;
    free(pTmp);
    printf("\"%s\" : Found, remove successed.\n", pszName);
    return;
  }
  // 헤드가 아닌경우
  previousNode->pNext = pTmp->pNext;
  free(pTmp);
  printf("\"%s\" : Found, remove successed\n", pszName);
}

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

답변 1

1

널널한 개발자

코드를 분리한 가장 큰 이유는 UI 코드와 자료구조 코드를 분리하기 위함입니다. 물론 재사용 가능성도 고려한 결과이기도 합니다. 감사합니다. 😄

05_adtFileIO 개정이력에 대한 질문

0

42

2

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

0

61

2

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

0

46

1

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

0

129

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

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

0

259

1

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

05_adtFileIO 프로젝트 문의

0

257

1

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

0

304

2

강의자료 관련

0

203

1