반응형

동적 배열 9

[C++ 무료 동영상 강의] 50. 인덱스 연산자 중복 정의

[C++ 무료 동영상 강의] 50. 인덱스 연산자 중복 정의 다루는 내용인덱스 연산의 의미,인덱스 연산자 중복 정의, 동적 배열 앞으로 프로그래밍 관련 글은 새롭게 개설한 언제나 휴일 전용 사이트에서 만나보세요. 2017년 1월 1일까지 이 곳의 프로그래밍 자료는 http://ehpub.co.kr 로 옮길 예정입니다. 본문[디딤돌 C++] 50. 인덱스 연산자 중복 정의

[C++ 무료 동영상 강의] 49. 대입 연산자 중복 정의

[C++ 무료 동영상 강의] 49. 대입 연산자 중복 정의 다루는 내용디폴트 대입 연산자,얕은 복사,깊은 복사,복사 생성자,대입 연산자 중복 정의, 동적 배열 앞으로 프로그래밍 관련 글은 새롭게 개설한 언제나 휴일 전용 사이트에서 만나보세요. 2017년 1월 1일까지 이 곳의 프로그래밍 자료는 http://ehpub.co.kr 로 옮길 예정입니다. 본문[디딤돌 C++] 49. 대입 연산자 중복 정의

[Java 언어 활용] 3.1 제네릭(Generic)

[Java 언어 활용] 3.1 제네릭(Generic) 제네릭(Generic)은 여러 형식에 맞게 재사용할 수 있는 코드를 정의하는 기술을 말합니다. 제네릭 코드를 정의할 때는 가상의 형식 이름을 처럼 정의하고 사용하는 곳에서 어떠한 형식에 관한 코드를 사용할 것인지 명시하여 사용하는 기법입니다. 먼저 제네릭 클래스를 정의할 때는 클래스명 뒤에 을 명시하여 만들 수 있습니다. class 클래스명{ } 사용하는 곳에서는 가상 형식 이름 대신 구체적으로 사용할 형식을 결정하여 을 명시하여 사용합니다. 클래스명 변수명 = new 클래스명(); 다음은 정수 형식을 보관하는 정수 적 배열 클래스와 제네릭 형식으로 원하는 형식을 사용자가 결정할 수 있는 제네릭 동적 배열 클래스를 정의한 것입니다. ▷ 소스 3.1 정..

[C언어 알고리즘] 7.4.2 크루스칼 알고리즘 소스 코드

[C언어 알고리즘] 7.4.2 크루스칼 알고리즘 소스 코드다음은 C언어로 작성한 크루스칼 알고리즘 소스 코드입니다. 동적 배열과 정점과 간선을 이용한 그래프를 구현하여 사용하였습니다. //Array.h#pragma oncetypedef void * Element;typedef struct _Array Array;struct _Array{ Element *base; int capacity; int usage;};typedef Element *Iterator; Array *New_Array();void Delete_Array(Array *arr);void Array_SetSize(Array *arr,int capacity,Element data);void Array_PushBack(Array *arr,Ele..

[C언어 자료구조] 2.4 동적 배열 소스 코드

[C언어 자료구조] 2.4 동적 배열 소스 코드//common.h #pragma once //헤더 파일을 한 번만 포함해서 컴파일 #include #include #include #include #include #include #include #pragma warning(disable:4996) //4996컴파일 경고 메시지 출력 해제 //Book.h #pragma once #include "common.h" #define MAX_TIT_LEN 200 #define MAX_AUT_LEN 20 typedef struct _Book Book; struct _Book { char title[MAX_TIT_LEN+1]; char author[MAX_AUT_LEN+1]; int num; }; Book *New_B..

[C언어 자료구조] 2.3 동적 배열 테스트

[C언어 자료구조] 2.3 동적 배열 테스트 앞에서 만든 동적 배열이 잘 동작하는지 확인하는 시뮬레이션 코드를 작성합시다. 여기에서는 순차적으로 자료를 보관하는 예와 특정 키순으로 보관하는 예, 인덱스를 사용하는 예를 들게요. int main() { Simul_Seq(); Simul_Order(); Simul_Index(); return 0; } 먼저 순차적으로 동적 배열을 사용하는 시뮬레이션 코드를 작성합시다. void Simul_Seq() { 먼저 동적 배열을 생성합니다. Array *arr = New_Array(); 그리고 도서 개체를 생성하여 순차적으로 동적 배열에 보관합니다. Array_PushBack(arr,New_Book("C언어","홍길동",10)); Array_PushBack(arr,Ne..

[C언어 자료구조] 2.2 동적 배열 구현

[C언어 자료구조] 2.2 동적 배열 구현 먼저 동적 배열을 생성하는 함수를 작성합시다.Array *New_Array(){ 동적 배열 형식 크기의 메모리를 할당합니다. Array *arr = 0; arr = (Array *)malloc(sizeof(Array)); 자료를 보관할 저장소는 0으로 초기화합니다. 여기서 구현할 동적 배열은 저장소가 꽉 차면 내부적으로 저장소의 크기를 확장해 나갈 것입니다. arr->base = 0; 저장소에 용량과 보관한 자료 개수를 0으로 초기화한 후 동적 배열을 반환합니다. arr->capacity = arr->usage = 0; return arr;} 동적 배열을 소멸하는 함수를 작성합시다.void Delete_Array(Array *arr){ 만약 저장소가 유효하면 저..

[C언어 자료구조] 2.1 동적 배열 설계

[C언어 자료구조] 2.1 동적 배열 설계 여기에서 작성하는 배열은 동적 배열입니다. 동적 배열이란 자료를 저장하는 메모리를 프로그램 동작 중에 크기를 결정하여 동적으로 할당하는 배열을 말합니다. 즉 보관할 수 있는 원소의 개수를 개발 단계에서 결정하는 것이 아니라 실행 시간에 결정하는 것을 말합니다. 그리고 저장소에 자료를 보관한 상태가 꽉 찼을 때 다른 자료를 보관 요청하면 저장소의 크기를 확장하는 확장 가능한 동적 배열로 정의합시다. 이를 위해서 사용자 정의 배열 형식에서는 저장소의 위치 정보와 현재 저장소의 크기와 보관하고 있는 자료 개수를 멤버로 기억하고 있어야 합니다. 특히 이 책에서 작성한 배열은 동적으로 생성한 자료를 보관하기 위한 용도로 작성합시다. 어떠한 형태의 자료이든 동적으로 생성한..

[디딤돌 자료구조와 알고리즘] 5.1 배열 - 5.1.1 동적 배열 설계

5. 1 배열 C언어에서 제공하는 형식 배열은 원소 개수를 개발 단계에 상수로 결정하여 컴파일 시점에 할당할 메모리 크기를 결정합니다. 하지만 자료구조에서 말하는 배열은 C언어에서 제공하는 배열뿐만 아니라 같은 종류의 자료를 보관하기 위해 동적으로 메모리를 할당하여 관리하는 구조도 포함합니다. 이 책에서는 자료를 보관하는 저장소를 동적으로 할당하는 사용자 정의 배열을 구현하고 배열을 사용하는 방법을 살펴봅시다. 5.1.1 동적 배열 설계 여기에서 작성하는 배열은 동적 배열입니다. 동적 배열이란 자료를 저장하는 메모리를 프로그램 동작 중에 크기를 결정하여 동적으로 할당하는 배열을 말합니다. 즉 보관할 수 있는 원소의 개수를 개발 단계에서 결정하는 것이 아니라 실행 시간에 결정하는 것을 말합니다. 그리고 저..

반응형