[삼성전자 DX] 대학생 S/W 알고리즘 특강 후기

Rowan Lee·2025년 3월 23일

취업

목록 보기
3/3

삼성전자 DX에서 진행한 S/W 알고리즘 특강을 이수했다. 사전 코딩테스트를 합격한 인원을 대상으로 진행되었다.

주요 활동

  • 삼성전자 현직자 멘토링
  • 알고리즘 전문가 문제 풀이 및 해설
  • 삼성(SWEA) 역량테스트 B형 기출 풀이 및 시험

성과

  • 수강생 200명 대상 중간 코드배틀 Java부문 1등
  • 삼성 B형 검정 합격

배운 점

코딩테스트 준비는 어떻게 해야할까?

  • 문제 조건을 추상화 하기(여러 문제들 사이의 공통점 찾기)
  • 다양한 접근법 시도하기
  • 다른 사람 코드 분석해보기 (다양한 접근법)

새로 배운 알고리즘

  • Trie
  • Segment Tree (Lazy, Dynamic 변형)
  • 제곱근 분할법
  • 롤링 해싱(라빈 카프 알고리즘)

직접 배우진 않았지만 언급된 알고리즘

알고리즘-모음

알고리즘과 관련된 지식

최적화 해볼 수 있는 부분

  • 캐시(L1, L2, L3)를 활용하기 위해 배열을 애용하라.
  • 해싱의 경우 롤링 해싱을 고려해라. (직접 해쉬함수 구현)
  • 레드블랙트리의 경우 O(log2 n)정도로 매우 느리다.
  • 객체 생성과 삭제를 최소화하라.
  • 동적배열의 더블링으로 인한 내부 단편화를 고려하라.(크기 미리 할당)

시간복잡도의 함정

시간복잡도를 계산해보다가 시간이 없다면 이를 그냥 구현하고 최적화를 고려해보자.

B형 검정 조언

B형 검정 보시는 분들이 계실거 같아 조언도 남겨봅니다.

  • 정해 시간복잡도가 1억을 넘기도 한다. (최적화가 중요한 이유)
  • 완전 랜덤 테스트케이스이다. (확실하진 않지만 저격 케이스가 없기에 빅오자료형으로 계산시 과하게 비관적일 수 있다.)
profile
CS/Software Engineer

0개의 댓글