반응형

MIG 5

[알고리즘]mergeSort 병합정렬

안녕하세요 ki입니다.오늘 내용은 병합정렬입니다. mergeSort 병합정렬분할 정복기법을 사용, 리스트를 분할하고 정렬된 리스트를 병합하여 전체 리스트를 정렬하는 알고리즘 시간복잡도시간 복잡도는 퀵정렬과 같은 O(n log n) 입니다.  병합정렬 과정1. 분할 : 리스트를 균등하게 반으로 나눔2. 정렬 : 반으로 나눈 리스트를 정렬3. 병합 : 정렬된 리스트를 하나로 병합  단점임시로 저장할 공간이 필요하여 메모리가 사용됨됨 자바코드로 구현하기public class MergeSort { // mergeSort는 임시 저장소가 필요하여 배열에 크기 만틈 임시저장소 생성 private static void mergeSort(int[] arr){ int[] tmp = new int[..

MIG/알고리즘 2024.06.18

[알고리즘] 퀵정렬

안녕하세요 ki입니다.오늘 공부 내용은 퀵정렬입니다.지난 글에서는 시간복잡도에 대해 알아보았습니다.그중 O(n log n)인 퀵정렬을 공부를 해봤습니다.2024.06.12 - [MIG/알고리즘] - [알고리즘] 시간 복잡도를 알아보자 [알고리즘] 시간 복잡도를 알아보자안녕하세요 ki입니다.오늘은 시간 복잡도에 대해 공부하려고 합니다.저는 프로그래머스에서 알고리즘 공부를 종종 하고 있습니다.그중 시간복잡도에 대해 알게 됐고 그것에 대해 공부하려고 합kkkkt.tistory.com QuickSort분할 정복(Divide and Conquer) 기법을 사용하는 효율적인 정렬 알고리즘평균적으로 매우 빠르고, 실제로 많이 사용되는 정렬 알고리즘 시간 복잡도평균적으로 O(n log n)이지만 최악의 경우 O(n^2..

MIG/알고리즘 2024.06.14

[알고리즘] 시간 복잡도를 알아보자

안녕하세요 ki입니다.오늘은 시간 복잡도에 대해 공부하려고 합니다.저는 프로그래머스에서 알고리즘 공부를 종종 하고 있습니다.그중 시간복잡도에 대해 알게 됐고 그것에 대해 공부하려고 합니다. 시간복잡도(Time Complexity)시간복잡도는 알고리즘의 효율성을 평가하는 중요한 기준 중 하나입니다. 이 기준으로 알고리즘의 실행 시간이 입력 값에 따라 어떻게 변하는지 예측할 수 있는데 예를 들어 입력 값 n이 커질 때 알고리즘이 얼마나 빠르게 실행 됐는지에 따른 결과를 분석하는 데 사용합니다.   시간복잡도 표기법시간복잡도를 표기하기 위해 대표적인 방법은 빅오(Big-O) 표기법입니다.빅오 표기법은 점근 표기법라고도 불리는데 빅오표기법 외에 빅 오메가 표기법(Big Omega) , 빅 세타 표기법(Big T..

MIG/알고리즘 2024.06.12

[CS지식] 네트워크 계층 지식 정리하기-TCP/IP 4계층

안녕하세요 ki입니다.지난 글에서는 OSI 7 계층에 대해서 정리했었는데요 오늘은 TCP/IP에 대해 공부 와 정리를 하려고 합니다.2024.05.08 - [MIG/CS] - [CS지식] 네트워크 계층 지식 정리하기-OSI 7 계층 [CS지식] 네트워크 계층 지식 정리하기-OSI 7계층안녕하세요 ki입니다.개발을 하면서 부족했던 CS지식들을 공부 중입니다. 애증의 정처기에도 도움이 되고 이해하는 것에 도움이 되어cs 공부를 먼저하기로 결정하였습니다. 그중 네트워크는 이kkkkt.tistory.com TCP/IP 4 계층TCP/IP는 인터넷에서 데이터를 주고받기 위한 네트워크 프로토콜입니다.TCP와 IP는 통신 방식입니다.  TCP (Transmission Control Protocol 전송제어 프로토콜)..

MIG/CS 2024.05.12

[CS지식] 네트워크 계층 지식 정리하기-OSI 7계층

안녕하세요 ki입니다.개발을 하면서 부족했던 CS지식들을 공부 중입니다. 애증의 정처기에도 도움이 되고 이해하는 것에 도움이 되어cs 공부를 먼저하기로 결정하였습니다. 그중 네트워크는 이해하기 힘들어서 중점적으로 공부하려고 합니다.  OSI 7계층 정처기에서도 단골 문제로 등장하는 개념입니다. 저는 수제비로 공부를 했었는데 "아파서 티 내다 피"나다 로 외웠는데무작정 외우려고 하다 보니 기억하기가 쉽지가 않았고 긴가민가 합니다.    데이터를 송신할 때에는 송신부 높은 계층에서 낮은 계층으로 전달하고 수신부에 낮은 계층으로 전달되고 낮은 계층부터 높은 계층으로 데이터가 흐릅니다. 몰랐던 사실 중에 데이터를 송신할 때 헤더(header)와 트레일러(trailer)가 붙고 이과정을 캡슐화라고 부르는 걸 알게..

MIG/CS 2024.05.08