증감연산자는 ++, -- 두 가지이며, 피연산자의 앞 또는 뒤에 붙어 값을 1 증가시키거나 1 감소시킨다. 연산자가 변수의 앞에 붙을 때 전위 연산자라고 부르고, 뒤에 붙을 때 후위 연산자라고 부른다.
Dynamic Programming (동적 계획법 - 2) >4. 양의 정수 n의 합 표현 방법 >5. 거스름 돈 나누어 주는 방법 >6. Weighted Interval Scheduling
두 원소의 키 비교에 의한 정렬 방법이 아닌 정렬 알고리즘으로 기수정렬과 계수정렬이 있다.
병합 정렬(Merge Sort)과 퀵 정렬(Quick Sort)
문제 : 어떤 회사의 주식 가격이 날짜 별로 n개 주어져 있다. 한 번 주식을 사서 한 번 팔 수 있다고 하자. 얻을 수 있는 최대 이득을 구하는 프로그램을 작성하시오.
세 개의 막대기 1, 2, 3이 있고, 서로 다른 크기의 n개의 원반들이 막대기 1에 크기순서(위에서부터 아래로 크기가 증가)대로 놓여있다. 다음 규칙을 지키면서 막대기 1에 있는 모든 원반들을 막대기 3으로 옮겨라.
문제의 해를 부분문제(subproblem, 작은 크기의 입력에 대한 동일한 문제)의 해를 이용하여 해결하는 방법
[수업 목표] 1. 트리, 힙의 개념과 활용법에 대해 배운다. 2. 그래프, BFS, DFS 에 대해 배워보자. 3. Dynamic Programming 의 개념과 그 필요성을 배워보자.
가끔 함수를 작성하곤 할 때, 인자 전달 및 매개변수의 전달 방식이 헷갈려 헤매던 경우가 있었다. 이를 방지하고자 이번 포스트에서 정리를 해보려고 한다.
정렬을 배우고 나서 sort를 자주 썼었는데, 리스트 이외의 자료형에서도 정렬을 해주고 싶었으나 sort는 list 내장 함수이기 때문에 불가능 하였다. 하지만 우리에겐 sorted()가 있었으니.. 비교를 해보며 어떨 때 써야할지 체크해보자
종종 파이썬 리스트에 원소를 추가할 때면 헷갈리는 함수들이 두가지 있다. 바로 extend와 append이다.
[수업목표] 1. 정렬의 다양한 방법과 구현 방법에 대해 배운다. 2. 스택, 큐의 개념과 활용법에 대해 배운다. 3. 해쉬 개념과 활용법에 대해 배운다.
[수업목표] 1. 어레이와 링크드리스트에 대해 배우고 차이점을 익힌다. 2. 이진 탐색의 효율성과 전제 조건에 대해 배운다. 3. 재귀함수의 방법과 전제 조건에 대해 배운다.
이번엔 파이썬의 다양한 자료형 별로 주요 연산자의 TimeComplexity를 비교해 보고자 한다.