[2024 동계모각코] 5주차 결과
·
스터디/2024동계모각코
"Do it! 알고리즘 코딩테스트 with Python" 책에서04-1 버블 정렬 부분을 풀어볼 것입니다.04-1 버블 정렬 정렬 알고리즘의 종류와 정의에 대해 먼저 알아봅시다. 버블(bubble) : 데이터의 인접 요소끼리 비교하고, swap 연산을 수행하며 정렬하는 방식선택(section) : 대상에서 가장 크거나 작은 데이터를 찾아가 선택을 반복하면서 정렬하는 방식삽입(insertion) : 대상을 선택해 정렬된 영역에서 선택 데이터의 적절한 위치를 찾아 삽입하면서 정렬하는 방식퀵(quick) : pivot 값을 선정해 해당 값을 기준으로 정렬하는 방식병합(merge) : 이미 정렬된 부분 집합들을 효율적으로 병합해 전체를 정렬하는 방식기수(radix) : 데이터의 자릿수를 바탕으로 비교해 데이터를..
[2024 동계모각코] 5주차 목표
·
스터디/2024동계모각코
"Do it! 알고리즘 코딩테스트 with Python" 책에서04-1 버블 정렬 부분을 풀어볼 것입니다.
[2024 동계모각코] 4주차 결과
·
스터디/2024동계모각코
"Do it! 알고리즘 코딩테스트 with Python" 책에서03-3 투 포인터~03-4 슬라이딩 윈도우 부분을 풀어볼 것입니다.03-3 투 포인터투 포인터는 2개의 포인터로 알고리즘의 시간 복잡도를 최적화합니다.문제 006 연속된 자연수의 합 구하기https://www.acmicpc.net/problem/201801단계 문제 분석하기 문제에 주어진 시간 제한은 2초인데 N의 최댓값은 10,000,000으로 매우 크게 잡혀 있으므로 이런 상황에서는 O(nlogn)의 시간 복잡도 알고리즘을 사용하면 제한 시간을 초과하므로 O(n)의 시간 복잡도 알고리즘을 사용해야 합니다. 이때 자주 사용하는 방법이 투 포인터입니다! 연속된 자연수의 합을 구하는 것이 문제이므로 시작 인덱스와 종료 인덱스를 지정하여 연속된..
[2024 동계모각코] 4주차 목표
·
스터디/2024동계모각코
"Do it! 알고리즘 코딩테스트 with Python" 책에서03-3 투 포인터~03-4 슬라이딩 윈도우 부분을 풀어볼 것입니다.
[2024 동계모각코] 3주차 결과
·
스터디/2024동계모각코
"Do it! 알고리즘 코딩테스트 with Python" 책에서03-1 배열과 리스트~03-2 구간 합 부분을 풀어볼 것입니다. 03-1 배열과 리스트배열과 리스트의 핵심 이론배열배열은 메모리의 연속 공간에 값이 채워져 있는 형태의 자료구조입니다.배열의 값은 인덱스를 통해 참조할 수 있으며, 선언한 자료형의 값만 저장할 수 있습니다.배열의 특징1. 인덱스를 사용하여 값에 바로 접근 가능.2. 새로운 값을 삽입 or 특정 인덱스에 있는 값 삭제 어려움. (값을 삽입 or 삭제하려면 해당 인덱스 주변에 있는 값을 이동시키는 과정이 필요하다.)3. 배열의 크기는 선언할 때 지정 가능, 한 번 선언 시 크기를 늘리거나 줄일 수 없음.4. 구조가 간단-> 코딩테스트에서 많이 사용됨.리스트리스트는 값과 포인터를 묶..
[2024 동계모각코] 3주차 목표
·
스터디/2024동계모각코
"Do it! 알고리즘 코딩테스트 with Python" 책에서03-1 배열과 리스트~03-2 구간 합 부분을 푸는 것이 3주차 목표이다.