본문 바로가기

전체 글

(55)
Container Class와 Template 컨테이너 클래스 (Container Class) 다수의 데이터 객체를 저장하는 자료구조 class class Bag { public: Bag (int bagCapacity=10); // 생성자 ~Bag();// 파괴자 int Size() const;// Bag의 원소 수 반환 bool IsEmpty() const;// Bag이 공백인지 아닌지 int Element() const;// Bag에 있는 원소 반환 void Push(const int&);// Bag에 정수 삽입 void Pop();// Bag에 정수 삭제 private: int *array; int capactiy;// 배열 크기 int top;// 배열에서 top 원소 위치 } ※ const 멤버함수는 class 내 멤버 변수 치환 불가 Te..
정렬 선택 정렬 (Selection Sort) void SelectionSort (int *a, const int n){ for (int i=0; i
2. 배열 (Array) int arr[7]; // 4번째 원소 접근 방법 2가지 arr[3] = 613; *(arr+3) = 613; 다항식 표현 class Polynomial;// 전방 선언 class Term { friend Polynomial;// Polynomial class에서 접근 가능 private: float coef;// 계수 int exp;// 지수 }; class Polynomial { private: Term *termArray;// 0이 아닌 항의 배열 int capacity;// termArray 크기 int terms;// 0이 아닌 항의 수 public: void NewTerm(const float theCoeff, const int theExp); Polynomial(void);// 생성자 ~Po..
1. 기본 개념 프로그램 접근 level public 프로그램 어디에서도 접근 private 같은 class내, friend로 선언된 함수나 class에 의한 접근 protected 같은 class내, 서브 class, friend에 의한 접근 Class 선언 class Rectangle { public:// 4개의 public 멤버 함수 Rectangle();// 생성자 ~Rectangle();// 파괴자 int GetHeight();// 사각형 높이 반환 int GetWidth();// 사각형 길이 반환 private:// 4개의 private 데이터 멤버 int xLow, yLow, height, width; }; Class 정의 밖에서 멤버 함수 구현시 접두어 필요 int Rectangle::GetHeight()..
자료구조 개념, 종류 자료구조란? 일련의 자료들을 조직하고 구조화 하는 것 ex) 배열, 연결리스트, 트리, ... 성능 분석 공간 복잡도 - 필요한 공간의 크기 시간 복잡도 - 필요한 실행문의 실행 횟수 1. 배열 (Array) 인덱스와 값 의 쌍으로 구성된 집합. 일련의 연속된 메모리 위치로 정의. 2. 스택 (Stack) LIFO (Last In First Out) : 한쪽 끝(top)에서 모든 삽입과 삭제가 일어나는 list 3-1. 큐 (Queue) FIFO (First In First Out) : 한쪽 끝(rear)에서 삽입이 일어나고 다른 끝(front)에서 삭제가 일어나는 list 3-2. 원형 큐 (Queue) front와 rear가 시계방향으로 이동 4-1. 연결리스트 (Linked List) 순서 list..
C++ 배열 동적할당 1차원 배열 동적할당 int n=7; // 메모리 할당 int *arr = new int[n]; // 할당 메모리 삭제 delete[] arr; 2차원 배열 동적할당 int row=6, col=13; // 메모리 할당 int **mat; mat = new int*[row]; for (int i=0; i
C 배열 동적할당 1차원 배열 동적할당 // 1차원 배열 동적할당 int x = 7; int *arr; arr = (int *) malloc ( sizeof(int) * x ); 2차원 배열 동적할당 // 2차원 배열 동적할당 int row = 6; col = 13; int ** arr; arr = (int **) malloc ( sizeof(int) * row ); for( int i=0; i