본문 바로가기

전체 글

(87)
자료구조 문제 정리 (1) 배열, 리스트 1. 자료구조선형구조 (배열, 리스트, 스택, 큐)데이터의 항목 사이의 관계가 1:1이며, 선후 관계가 명확한 1개의 선의 형태를 갖는 리스트 구조를 말한다.각 자료 항목 사이의 관계의 표현 방법과 항목의 입출력 방법에 따라 배열, 연결리스트, 스택, 큐, 데크로 나뉘어진다.비선형 구조 (트리, 그래프)데이터의 항목 사이에 1:n 또는 n:m 관계를 갖는 그래프적 특성을 갖는 형태트리, 그래프가 속한다.그래프는 사이클을 허용하며 트리는 사이클을 허용하지 않는다 2. 알고리즘 컴퓨팅 사고에서 주어진 문제의 중요한 특징만으로문제를 간결하게 재정의함으로써 문제 해결을 쉽게 하는 과정을 말한다.알고리즘의 특성은 다음과 같다.입력 : 외부에서 제공되는 자료가 있을 수 있다(0개 이상의 입력이 존재)출력 : 반드시..
알고리즘 시간복잡도 알고리즘 빅오 표기법컴퓨터가 하는 일 : 데이터 저장, 연산어떻게 하면 데이터를 적은 메모리에 저장할까? → 자료구조어떻게 하면 문제를 빠르고 정확하게 해결할 수 있을까? → 알고리즘알고리즘의 효율성을 판단하는 근거로 시간 복잡도와 공간 복잡도를 들 수 있다.시간 복잡도 : 얼마나 빠르게 결과를 출력할수 있을까? T(n)공간 복잡도 : 메모리를 얼마나 사용하는가? S(n)효율성을 판단하는 표기법으로 빅오 표기법, 빅오메가 표기법, 빅세타 표기법이 있다. 빅오 표기법최악일 때의 성능을 판단하는 것이다. 이보다 더 나쁜 경우는 없어를 기준으로 한다 (상한)가장 많이 사용하는 분석방법이다 ↔ 최상일 때의 경우를 판단하는 것은 빅오메가 표기법이다. 시간 복잡도시간 복잡도는 문제를 해결하는데 몇번의 단계를 거쳐야..
선형 자료구조 자료구조내가 저장하려는 데이터를 효율적으로 저장하고 관리하는 방법이 자료구조입니다.어떻게 하면 적은 메모리를 사용해서 내 데이터를 저장하고 관리할수 있을까? 에 관한 것이며 적절한 자료구조의 선택은 실행 성능의 향상을 기대할 수 있게 됩니다.자료구조를 선택하려면 자료구조에 대한 장점, 단점에 대해 알고 있어야 합니다.자료구조는 순차적인 순서를 갖는 선형 자료구조 / 비선형 자료구조로 나눠집니다. 선형 자료 구조1. 배열(선형리스트)배열은 청크 형태로 연속적인 메모리가 할당되는 공간입니다, 배열은 덩어리로 할당되는 자료구조이며 연속적으로 할당되기 때문에 각각의 원소에 접근할땐 0부터 1씩 증가하는 인덱스로 접근합니다.배열은 가장 큰 장점이 임의 접근(random access)입니다. 내가 배열의 특정 원소..