기초지식 학습에 대한 필요성을 절실하게 느끼고 구입한
"자료구조와 함께 배우는 알고리즘 입문 - 파이썬편" 책의 내용을
공부하며 정리한 내용입니다.
1. 알고리즘 관련 개념
알고리즘 : 어떠한 문제를 해결하기 위해 정해놓은 일련의 절차
올바른 알고리즘? 어떠한 경우에도 실행 결과가 똑같이 나오는 것
- 순차 구조 : 순서대로 처리되는 구조
- 조건식 : if와 콜론(:)사이에 있는 식
maximum = a
if b > maximum : maximum = b
: if ~ maximum 까지가 조건식
- 선택 구조 : 조건식으로 평가한 결과에 따라 프로그램의 실행 흐름이 변경되는 것
- 양갈래 선택 : 작성한 조건식에 따라 알고리즘의 흐름이 두 갈래로 나뉘는 것 (예/아니오의 형태)
- 헤더 : if나 while문과 같은 복합문의 콜론까지의 범위 (조건식이 포함되는 부분)
- 스위트(suite) : 헤더와 한세트로 따라다니는 실행문
스위트가 단순문인 경우 => 헤더와 같은 행에 둘 수 있음.
세미콜론(;)을 통해 단순문을 구분할 수도 있음
if a<b: min2=a
if a<b: min2 = a; max2 = b;
틀린 예시. 헤더와 같은 행에 복합문을 두개 둘 수 없다.
if a < b : if c < d: x =u
- 결정 트리(decision tree) : 조합을 나열한 모습이 나무처럼 보이는 것
왼쪽 끝에서 시작해 오른쪽으로 나아가며, 예 - 아니오에 따라 움직인다.
- 연산자
- 단항 연산자 : 피연산자 1개 (ex: -a)
- 이항 연산자 : 피연산자 2개 (ex: a<b)
- 삼항 연산자 : 피연산자 3개 (ex: a if b else c)
- 조건 연산자 : if~else 문은 파이썬의 유일한 삼항 연산자!
2. 순서도
문제를 정의, 분석하고 해결하는 방법을 그림으로 표현
- 실제로 실행할 연산을 나타내는 기호
- 제어 흐름을 나타내는 선 기호
- 프로그램 순서도를 이해하거나 작성하는데 편리한 특수 기호
- 데이터 : 기억 장치를 지정하지 않은 데이터 자체
- 처리 : 여러 종류의 처리 기능. 정보의 값, 형, 위치를 바꾸도록 정의한 연산이나 연산 집행의 실행, 연속하는 몇가지 흐름 가운데 하나의 방향을 결정하는 연산이나 연산집행의 실행을 나타낸다.
- 판단 : 하나의 입구와 하나 이상을 선택하는 출구가 있고 정의한 조건을 평가하여 하나의 출구를 선택하는 판단기능을 나타낸다.
- 루프 범위 : 시작과 종료를 나타내며, 같은 기호로 사용한다. 같은 내용을 표기하여 시작과 종료를 알리고 시작값, 증갓값, 종룟값 같은 조건을 표기한다.
⚠️ 출처
-
내용 : Do it 자료구조와 함께 배우는 알고리즘 입문 - 파이썬편
-
순서도 관련 이미지
https://m.blog.naver.com/PostView.naver?isHttpsRedirect=true&blogId=njw1204&logNo=221372908724