[CS공부] 1. 알고리즘 기초

악어·2024년 3월 2일
0

CS / 알고리즘 공부

목록 보기
1/10
post-thumbnail

깃허브 정리본

용어

  • sequential structure(순차구조): 한 문장씩 순서대로 처리되는 구조

  • select structure(선택구조): 조건식으로 평가한 결과에 따라 실행 흐름이 변경되는 구조

  • repetition structure(반복구조): loop라고 불리는 반복 처리 구조

  • header(헤더): if, while같은 복합문의 콜론(:) 앞부분(조건을 정의하는 부분)

  • suite(스위트): if, while같은 복합문의 콜론(:) 뒷부분(실행문)

  • 알고리즘: 어떠한 문제를 해결하기 위해 정해 놓은 일련의 절차

  • 올바른 알고리즘: 어떠한 경우에도 실행 결과가 똑같이 나오는 것

  • CamelCase(카멜 형식)

  • snake_case(스네이크 형식)

  • decision tree(결정트리): 나올 수 있는 모든 조합의 경우를 트리형식으로 나열한 것

  • 삼항 연산자: a if b else c 형식

  • flowchart(순서도): 문제를 정의, 분석하고 해결하는 방법을 그림으로 표현한 것

  • iterable: 반복 가능한 객체, 파이썬에서는 list, str, tuple 등이 있음



실습

눈으로 코드만 보고 넘어가도 될만한 내용들이다.
굳이 한 가지 해본다면 직사각형 넓이로 길이구하기.
i * i > area 에서 실행을 멈춘다는 개념이 재미있어 직접 해봤다.

while(True):
    area = int(input("직사각형의 넓이를 입력하세요: "))
    if area > 0: break

for i in range(1, area + 1):
    if i * i > area: break
    if area % i: continue
    print(f"{i} x {area // i}")
    
    
# 실행결과 ==========================================
직사각형의 넓이를 입력하세요: 72
1 x 72
2 x 36
3 x 24
4 x 18
6 x 12
8 x 9


정리

새로운 개념을 배웠다기보다는 기존 사용하던 것들의
정확한 용어와 정의를 알 수 있었다.



profile
냅다 회사부터 세워버린 개발자

0개의 댓글