inflearn logo
강의

Course

Instructor

Data Structures and Algorithms Made Easy with Diagrams (Basics)

Hash table - Concept

질문

281

ghuhan18

121 asked

2

안녕하세요. 덕분에 삽입정렬 마스터했습니다.

 

또한 다른 쪽 우선 공부해보고 싶은 곳이 있는데, 만약 A=(1, 11, -2, 12, 8, 9)이고 x=10이라면, 알고리즘은 (1, 9) 또는 (-2, 12) 같은 쌍을 찾아내야 할때를 공부하고 싶은데, 어떤 부분을 공부하면 될까요? 기본인지 심화에 있는지도 말씀해주시면 감사드리겠습니다.

알고리즘

Answer 2

0

ghuhan18

친절하고 상세한 답변 감사합니다. 제가 딱 바로 떠오른 생각은 for 문을 2개 중첩시켜서 selection sort 의 방식과 같이 하나씩 직접 다 비교해보는 방법이 가장 적절할 것 같은데, 이에 대해서는 어떻게 생각하시나요 ?

0

gamja5

그 방법도 나쁘지 않는 것 같습니다.
다만 짝을 찾는 특성으로 이미 짝이 구해진 수는 탐색 범위에서 제거하면 더 빨라질 것 같습니다 :)

0

gamja5

안녕하세요 ghuhan18님!
말씀주신 알고리즘은 강의에서 직접적으로 다루지는 않습니다.
이 세상엔 셀 수도 없이 많은 알고리즘이 있는데 모든 알고리즘을 다루는 건 힘듭니다.
어떤 알고리즘의 경우는 이전에 배웠던 다른 알고리즘을 이용하거나 조금 변형하면 해결할 수 있는 경우가 있습니다.

말씀주신 알고리즘을 예를들면 해당 배열의 첫 번째 원소부터 끝까지 순회합니다.
만약 첫 번째 원소인 1을 선택했다면 x가 10이므로 9(10-1)을 찾으면 되겠죠?
여기서 검색 알고리즘을 사용해 9를 찾고 9를 찾았다면 (1, 9) 쌍이 존재하는 것을 알 수 있습니다.
이렇게 배열의 원소를 반복한다면 모든 쌍을 찾을 수 있을 것 같네요.
물론 지금 제가 말씀드린건 즉석에서 생각할 수 있는 아주 간단한 방식의 해결방법이고 문제의 정답은 여러가지가 될 수 있습니다.
우선 ghuhan18님께서 기존에 알고있는 자료구조와 알고리즘을 활용해서 문제를 해결하다가 아이디어가 떠오르지 않으면 다른 사람이 어떻게 해결했는지 참고하시면 공부에 큰 도움이 되실겁니다 :)

궁금증이 해결되셨나요?

큐의 마지막 데이터가 head에 위치해야 하는 이유가 궁금합니다.

0

71

2

이중연결 리스트 데이터 삭제시 질문이 있습니다.

1

61

2

자바스크립트 배열은 동적이 아닌가요?

1

85

2

자바스크립트 배열

0

75

2

코테에서 링크리스트 자료구조를 사용해야 하면, 이번 강의에서 구현한 메서드들도 모두 직접 구현하면 되나요?/

0

150

2

공부 방식 질문 드립니다.

1

115

2

메모이제이션과 타뷸레이션 관련해서 질문드립니다.

1

166

2

병합정렬에서 질문이 있습니다.

2

141

1

병합정렬 질문 있습니다.

1

136

5

데이터 삽입, 삭제 함수 오류 범위 설정

0

156

2

해시 테이블에서 질문이 잇습니다.

2

127

2

시간복잡도 계산 시 1회 연산당 연산량은 왜 고려하지 않는 건가요?

1

147

2

터미널 설정

0

113

2

2:13분 관련 질문입니다

0

89

1

8:47초경부터 9:00초까지 질문입니다.

1

133

2

tail을 삭제하는 경우에 관련해서 질문이 있습니다.

0

106

1

2:36초 head 위치가?

1

109

2

환경구축강의 중 터미널 파일 실행오류

0

160

2

4:58 이중for문 질문있습니다.

0

103

1

hanoi함수 처음 호출에 대해서 여쭤봅니다.

1

129

2

해쉬테이블 데이터 관련해서 질문있습니다.

0

147

2

자바스크립트 Map과 어떤 차이가 있나요??

0

202

2

질문이있습니다.

0

102

1

2번째 복습 스터디📖 를 진행하고 스터디원분들과 나눈 질문들 입니다.(자료구조와 알고리즘)

1

146

2