좋은 알고리즘을 선택하는데 있어서 여러 평가 기준이 있다. 그 중에 하나인 시간 복잡도에 대해 얘기하려고 한다.알고리즘이란 어떤 목적을 달성하거나 결과물을 만들어내기 위해 거쳐야 하는 일련의 과정을 의미한다.알고리즘은 각기 다른 모양과 형태를 지니고 있기 때문에, 시간
프로그램에서 데이터란 처리의 대상이 되는 모든 것을 말한다. 정수, 실수, 문자열 또는 여러 가지 타입이 합쳐진 것일 수도 있다.데이터의 집합과 이러한 데이터에 적용할 수 있는 연산의 집합을 말한다.ex) c언어에서 int 데이터 타입은데이터 : {..., -2, -1
연속적인 데이터를 표현하는 방법에는 여러가지 방법이 있을 수 있다. 배열이 있을 수도 있고, 어레이 리스트, 벡터, 링크드 리스트 등이 있다. 이번엔 링크드 리스트(연결 리스트)에 대해 알아보겠다.연결 리스트는 배열과 같이 여러 데이터를 연속적으로 나타내는 데이터 구조
자료 구조 중에서 데이터와 링크로 구성된 연결 리스트(Linked List)라는 것이 있다. 이 연결리스트를 어떻게 활용하여 만드느냐에 따라서 여러 자료 구조를 만들 수 있다. 이번엔 그 중에서 Stack에 대해서 얘기하겠다.리스트형 데이터 구조 중에서 한 쪽에서만 데
자료 구조 중에서 데이터와 링크로 구성된 연결 리스트(Linked List)라는 것이 있다. 이 연결리스트를 어떻게 활용하여 만드느냐에 따라서 여러 자료 구조를 만들 수 있다. 이번엔 그 중에서 Queue에 대해서 얘기하겠다.리스트형 데이터 구조 중에서 한 쪽에서만 데
조건 : 그래프 G는 connected graph이다.정의 : 그래프 G의 spanning tree는 다음 성질을 만족하는 G의 부분 그래프이다.G의 모든 정점들이 포함되어야 한다.connected 그래프이어야 한다.사이클을 포함하지 않아야 한다.신장트리는 다음 두 가