구현 "머릿속에 있는 알고리즘을 정확하고 빠르게 프로그램으로 작성하기"

2021. 3. 30. 23:03·알고리즘 공부

구현은 "아이디어를 코드로 바꾸는 것"

머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정이다. 구현은 "아이디어를 코드로 바꾸는 것"

 

머릿속에 있는 알고리즘을 소스코드로 바꾸는 과정이다

 

  • 알고리즘 문제의 해결 순서

문제 -> 생각 -> 해결 

이 순으로 알고리즘을 구성한다. 

문제 해결 분야의 구현유형은 "풀이를 떠올리는 것은 쉽지만 소스 코드로 옮기기 어려운 문제"를 의미한다.

즉, 구현 문제는 피지컬을 요구하는 문제라고도 한다.

 

  • 구현 문제 중 어려운 문제 특징

1) 알고리즘은 간단한데 코드가 지나칠 만큼 길어지는 문제

2) 특정 소수점 자리까지 출력해야 하는 문제

3) 문자열이 입력으로 주어졌을 떄 한 문자 단위로 끊어서 리스트에 넣아야 하는 문제

4) (개인적인 생각으로) 문법을 모를 때 , 사소한 조건을 구현하지 못할 때, 경험이 부족할 때도 있는 거 같다 

-> 대체로 사소한 조건 설정이 많은 문제일 수록 코드로 구현하기 까다롭다.

 

 

  • '구현' 유형으로는 완전 탐색 과 시뮬레이션 유형이 대표적이다.
  • 완전 탐색 : 모든 경우의 수를 주저 없이 다 계산하는 해결 방법
  • 시뮬레이션 : 문제에 제시한 알고리즘을 한 단계씩 차례대로 직접 수행

구현 문제의 접근 방법

특징 

사소한 입력 조건 등을 문제에서 명시해주며 문제의 길이가 꽤 긴 편이다.

문제의 길이를 보고 쫄지 말고,

고차원적인 사고력을 요구하는 문제는 나오지 않는 편이라 문법에 익숙하다면 오히려 쉽게 풀수 있다.

( 개인적인 의견 : 하지만 생각하는 것도 어려울수 있다.ㅋㅋ)

 

<출처> 이것이 코딩 테스트다 (지음 나동빈)

반응형

'알고리즘 공부' 카테고리의 다른 글

범위를 좁혀가는 탐색  (0) 2021.04.01
DFS(깊이 우선 탐색) 학습 전 인접행렬, 인접 리스트  (0) 2021.03.31
'알고리즘 공부' 카테고리의 다른 글
  • 범위를 좁혀가는 탐색
  • DFS(깊이 우선 탐색) 학습 전 인접행렬, 인접 리스트
코딩 코딩 코오딩
코딩 코딩 코오딩
  • 코딩 코딩 코오딩
    코딩하는 누누
    코딩 코딩 코오딩
  • 전체
    오늘
    어제
    • 분류 전체보기 (491)
      • 생산성 (2)
        • 인텔리제이 (2)
      • 프로젝트 기록 (14)
        • git (2)
        • spring (3)
        • TestCode (2)
        • spring security (3)
        • 기타 (2)
        • MySQL (0)
        • Cloud (2)
      • 회고 (4)
      • Spring (6)
      • JPA (0)
      • DB (4)
        • MySql (2)
        • Redis (1)
      • Java (7)
        • JSP (1)
      • 잡담 (1)
      • CS (30)
        • 컴퓨팅 사고 (0)
        • 배열 (4)
        • 알고리즘 (8)
        • 메모리 (7)
        • 자료구조 (9)
        • 암호학 (2)
      • opencv (14)
      • AI (56)
        • 머신러닝 (2)
        • 딥러닝 (7)
        • tensorflow (3)
        • 머신러닝(딥러닝) 정리 (21)
        • 강화학습 (7)
        • 논문 읽기 (1)
        • 잡동사니 (1)
        • python AI (13)
        • 선형대수 (1)
        • 확률론 (0)
      • 알고리즘 공부 (177)
        • 그래프 이론 (0)
        • 다익스트라 (4)
        • 위상정렬 (3)
        • 신장트리-크루스칼 알고리즘 (4)
        • 플로이드 워셜 (3)
        • 이진탐색 (9)
        • 백트래킹 (11)
        • 부르드포스 (9)
        • 다이나믹 프로그래밍 (20)
        • BFS & DFS (24)
        • 그리디 (6)
        • 구현 (15)
        • 정렬 (3)
        • 기타 (62)
        • 수학? (1)
      • 코딩 (173)
        • 파이썬(python) (15)
        • c언어 (13)
        • 프로그래머스 lv1 (46)
        • 프로그래머스 lv2 (41)
        • 백준 - c++ (49)
        • Softeer (9)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    왜곡보정
    스택
    if문
    BFS
    코딩기초스킬
    그리디
    삽입 정렬
    프로그래머스
    캘리브레이션
    백준
    에라토슽네스의 체
    코딩
    알고리즘
    자료구조
    n진법 변환
    C언어 기초
    선택정렬
    코딩문제
    이미지처리
    순차 탐색
    코딩기초
    정렬
    코딩테스트
    DFS
    다이나믹 프로그래밍
    인접리스트
    소수찾기
    큐
    인접행렬
    c언어
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.3
코딩 코딩 코오딩
구현 "머릿속에 있는 알고리즘을 정확하고 빠르게 프로그램으로 작성하기"
상단으로

티스토리툴바