list 4

#004_MFC_동적 배열 CArray 설명

안녕하세요 삽잡이입니다. 이번 시간에는 데이터를 보관하고자 MFC에서 사용할 수 있는동적배열인 CArray에 대해서 알아보려고 합니다. CArray 클래스는 사실, Template 입니다. 즉, Template Class 라고 부르는 것입니다. 클래스의 템플릿이지요...템플릿의 의미를 바라봤을 때 이는 '클래스를 만들어내는 틀'을 말합니다. Carray를 살펴보도록 하겠습니다. 다시 말하지만, 이놈은 템플릿입니다.두 가지의 타입을 받습니다. 이 두 가지 타입을 받는 경우는 크게 두 가지로 나뉩니다. (이런걸 언어유희... 푸하하) 우선 '기본 수치 형식'이라고 하며 int, char 와 같은 기본 자료형을 타입으로 쓸 경우 입니다. 이 때 만약, CArray에 int형 자료를 보관한다고 할 경우에 대해서..

#008_자료구조와 알고리즘_너와 나의 연결고리! 연결 리스트 예제

안녕하세요 삽잡이입니다. 이번 시간에는 지난 시간에 배웠었던 더미가 있는/없는 연결 리스트에 대한 코드를 소개하고자 합니다. 물론, 귀차니즘에 절정인 삽잡이는 전체 코드를 소개하지 않을 것입니다.푸하하... 더미가 없는 연결리스트는노드를 처음 생성할 때, 맨 앞에 추가할 때, 맨 뒤에 추가할 때, 중간에 추가할 때각각의 경우에 따라 코드의 차이가 있습니다. 하지만 더미가 있는 연결리스트의 경우에는더미가 없는 연결리스트에서 중간에 노드를 추가하는 방식과 차이가 없기 때문에어떠한 경우에서도 코드의 차이가 없습니다. 그렇다면, 잔소리는 집어치우고...각각의 경우 어떻게 코드를 구현하면 좋을지에 대해서 소개하겠습니다. 물론, 이 코드는 굳이 이해하실 필요는 없습니다.간략하게 list의 기능들 중 push_bac..

#007_자료구조와 알고리즘_너와 나의 연결고리! 연결 리스트 (더미 노드X)

안녕하세요 삽잡이 입니다. 이번 시간에는 더미 노드가 없는 상태의 리스트를 만들 때에 대해서 알아보려고 합니다. 일반적으로 지난시간에 봤듯이 더미노드가 있는 상태의 리스트에서는 데이터가 담긴 노드가 10개 일지라도,총 노드의 개수는 12개였습니다.왜냐? 더미 노드가 있는 연결 리스트에서는 데이터가 없는 노드 두 개가 있었기 때문입니다. 하지만 더미 노드가 없는 리스트의 경우데이터가 보관 된 노드의 개수와 실제 리스트에 총 노드의 개수가 동일합니다. 음... 그렇다면 더미 노드가 있는 리스트와 차이점은 이게 끝일까요?아닙니다... 더미 노드가 있는 리스트는 리스트 최초 구현시 Head와 Tail 이라는 더미 노드들이 생성되기 때문에데이터를 추가하거나, 삭제할 때 둘다 모두 방법이 동일합니다. iterato..

#006_자료구조와 알고리즘_너와 나의 연결고리! 연결 리스트 (더미 노드O)

안녕하세요 삽잡이 입니다. 오늘은 연결 리스트에 대해서 알아보도록 하겠습니다.연결 리스트는 STL 에서 제공하는 자료구조 중에 하나로써,비슷한 친구로 지난 시간에 배운 vector가 있습니다. 연결리스트는 '노드'들의 선형 집합을 말합니다. 영어로는 node. 즉, 나무 줄기의 마디를 뜻합니다.이 글을 진행하다 보면 결국은 왜 node라고 표현하는지 감을 잡으실 수 있을 것입니다. 노드들의 선형 집합... 그렇다면 자료구조에서 노드는 뭐라고 정의를 하고 있는가?바로, 데이터와 링크의 조합이라고 정의하고 있습니다.그렇다면 데이터는 알겠고.... 링크는?노드의 위치 정보라고 정의할 수 있습니다. 자 간략하게 연결 리스트에 사용되는 요소 및 용어에 대해서 알아봤습니다.그렇다면, 이제 연결 리스트를 도식화 해보..