Skip to content

Latest commit

 

History

History
76 lines (60 loc) · 3.45 KB

algorithm_expected_question.md

File metadata and controls

76 lines (60 loc) · 3.45 KB

Data structure & Algorithm

스택과 큐

  1. 스택과 큐의 차이점
  2. 스택과 큐의 활용 예시
  3. LinkedList를 사용하여 자료구조를 만드려 할때, 스택과 큐중 무엇이 더 적합한가?
  4. 자바 언어를 사용하여 스택과 큐 구현 시 linkedlist와 배열 방법이 있다. 차이점은?
  5. 큐로 스택을 구현하는 방법
  6. 스택으로 큐를 구현하는 방법
  7. 스택을 단순히 뒤집으면 되는데, 굳이 스택 2개를 사용하는 이유
  8. 스택과 큐의 시간 복잡도
  9. 스택과 큐의 두 가지 특성을 전부 사용하고 싶을 때는 무엇을 사용하면 좋을까요?
  10. 자바 라이브러리에서 덱(Deque) 인터페이스는 LinkedList로 구체화되는데 List 인터페이스가 아닌 덱(Deque)에 의존하는 이유는 무엇인지 설명해주세요.

Red-Black 트리

  1. 레드 블랙 트리에 대해 설명해주세요.
  2. 레드 블랙 트리의 특징 3가지
  3. 힙과 레드 블랙 트리의 차이점
  4. 레드 블랙 트리를 사용하는 이유
  5. 레드 블랙트리의 5가지 속성
  6. 삭제되는 색이 무엇인지, 그리고 그 경우 두가지
  7. 응용 사례, 사용처

  1. 큐와 우선순위 큐 비교
  2. 우선순위 큐와 비슷한 자료구조는 어떤게 있을까요?
  3. 힙 활용예시 설명해주세요.
  4. 힙 구조에 대해서 설명해주세요.
  5. 힙에 대해서 간단하게 설명해주세요.
  6. 힙에 대해서 삽입에 대한 설명과 시간복잡도
  7. 힙의 삭제 과정에 대해서 간단하게 설명해주세요.
  8. 힙과 레드블랙트리를 비교했을 때 장단점

정렬

  1. 퀵정렬에 대해서 설명해주세요.
  2. 퀵정렬의 시간복잡도에 대해 설명해주세요.
  3. 최악의 시간복잡도를 가지는 경우 해결방안은 무엇인가요?
  4. 어떤 경우에 최악의 경우를 가지는 경우는 무엇인가요?
  5. 퀵 정렬의 장단점
  6. 퀵정렬의 최악의 경우는 O(n^2)인데, 이문제를 해결하는 방법이 있을까요
  7. 그 방법은 어떻게 구현되나요?
  8. 퀵정렬의 시간복잡도가 O(n^2)가 되는 경우 설명해주세요.
  9. 병합정렬에 대해 설명해주세요.

해시

  1. Java : Hash Map과 Hash Set 이있음 Hash Set에 대해서 설명
  2. 해시 알고리즘 소개해주세요.
  3. 해시 맵과 해시 테이블의 차이점
  4. 해시 테이블에 대한 설명해주세요.
  5. 어떤 것이 좋은 해쉬 함수인가요?
  6. 해시 충돌 발생할 수 있다. 충돌 경우 해결 방법 한가지만 설명해주세요.
  7. Java의 HashMap에서는 어떤 방법으로 해시충돌을 해결하는지 아시나요.
  8. Separate Chaining 해결방안중 연결리스트를 이용한 방법과 레드블랙트리를 이용한 방법에 대한 시간복잡도 비교
  9. Use case

암호화 알고리즘

  1. 비대칭키 방식을 구현하는 방식 중 한가지만 선택해서 설명해주세요.
  2. 비대칭 키 암호화와 대칭키 암호화에 대해서 간단히 설명해주세요.
  3. 대칭키와 비대칭키의 장단점
  4. 단방향 암호화에 대해서 간단히 설명해주세요.
  5. 단방향 방식을 통해 디지털 디이터를 다룰때. mdc 와 mac를 설명해주세요.
  6. 암호화적 해쉬함수가 가져야하는 특징

그 외

  1. 이진탐색 트리와 이진트리를 설명해주세요.
  2. 편향 이진탐색 트리 해결하기 위한 트리 중 한가지 설명
  3. 그래프와 트리의 차이점을 설명해주세요.