컬렉션, 인덱서
자료구조란 여러 데이터들의 묶음을 저장하고, 사용하는 방법을 정의한 것이다.
데이터를 체계적으로 저장하고, 효율적으로 활용하기 위해서 자료구조를 사용한다.
Ar rayList
자료구조의 특징과 컬렉션의 사용방법 정도 배워보겠습니다.
Ar rayList에서 가장 중요한 메소드는
반대로 데이터를 꺼낼 때는 Dequeue() 메소드를 이용합니다.
큐는 스택과 유사하나 먼저 넣은 데이터가 먼저 나오는 형태의 자료구조이다.
배열도 사실,.NET이 제공하는 다양한 컬렉션 자료구조의 일부입니다.
자료구조에서 주로 다루는 내용
자료구조의 특징과 컬렉션의 사용방법 정도 배워보겠습니다.
자료구조 분류
Ar rayList에서 가장 중요한 메소드는
Ins et는 메소드는 원하는 위치에 새요소를 삽입합니다.
매개 변수로는 Ar rayList 객체를 받죠.
그 다음에 메인메소드 내부를 보면, alist라는 객체가 만들어졌고 Add메소드를 통해 요소를 추가합니다.
Ar rayList도 배열과 똑같게 인덱스가 0부터 시작합니다.) 그리고 28~29행을 보시면 Remove와 Ins ert라는 메소드가 쓰였는데, 말 그대로 Remove는 요소를 제거하는 데에 쓰입니다.
그럼 Remove메소드로 인해 5가 제거되고, Ins ert메소드로 인해 4와 6사이에 20이란 수가 끼어드는 것입니다.
이밖에도, 모든 요소를 지워버리는 Clear, 요소의 순서를 뒤바꾸 어버리는 Reverse, 정렬하는 So rt, 이진검색 Bin ary Search 등 여러 가지 메소드가 있으니 한 번 사용해보시는 것도 좋을 것 같습니다.
선입 선출(firstin, firstout)
큐는 자료구조는 데이터나 작업을 차례대로 입력해뒀다가 입력된 순서대로 하나씩 꺼내 처리하기 위해 사용됩니다.
큐의 활용 예시
큐에서 데이터를 입력하는 것은 오로지 뒤에서만 한다고 했지요?
큐는 스택과 유사하나 먼저 넣은 데이터가 먼저 나오는 형태의 자료구조이다.
스택의 구조를 후입 선출(LIFO, Last-In-First-Out) 구조이라고 한다.
그리고 비어 있는 스택에서 원소를 추출하려고 할 때 stacku nderflow라고 하며,
스택이 넘치는 경우 stackoverflow라고 한다.
17행을 보시면 Add메소드를 통해 Has hta ble에 추가시키고 있는데, 여기서 사과는 키(Key)고, apple는 값(Value)입니다.
List는 배열과 비슷하지만, 배열의 단점을 보완하였다.
인덱서(Indexer)는 이름이 this 인프로퍼티, 인덱스(첨자)를 이용하여 객체 내의 데이터에 접근하게 해주는 프로퍼티라고 생각하면 됩니다.
프로퍼티가 이름을 통해 객체 내의 데이터에 접근하게 해준다면 인덱서는 인덱스를 통해 객체 내의 데이터에 접근하게 해준다.
인덱서는 get, set 접근자를 통해 어떤 필드의 값을 얻어오거나 어떤 계산을 통해 새로운 값을 다른 곳에 지정한다.
인덱서 역시 프로퍼티처럼 실제값을 가지고 있지 않기 때문에 ref, out과 같은 접근자를 사용할 수 없다.
인덱서를 사용하면 배열과 유사한 방식으로 개체를 인덱싱할 수 있습니다.
this 키워드는 인덱서를 정의하는 데 사용됩니다.
value키워드는 set인 덱서에서 할당하는 값을 정의하는 데 사용됩니다.
인덱서는 오버로드될 수 있습니다.
인덱서 3-2
사회복지실천과정 중 자료수집 단계 사회복지실천과정 중 자료수집 단계
목차
사회복지실천과정 중 자료수집 단계
1/ 클라이언트가 작성한 서식
2/ 클라이언트의 구두보고
3/ 비언어적 행동의 직접적인 관찰
4/ 부부, 가족, 집단구성원의..
국민학파 및 서양 근현대 음악 발전사 개요 국민학파 및 서양 근현대 음악 발전사 개요
1. 국민악파의 음악
국민주의 음악과 민족주의 음악은 같은 내용의 음악으로 국민악파 (Nationalist School)음악 이라 한다. 국민악파 음악은 낭만파 후기에 싹터서 ..
국문학 - 노르웨이의 문학 예술 국문학 - 노르웨이의 문학 예술
목 차
1. 근대 민족문학의 탄생
2. 입센
3. 뵈른손
4. 함순
5. 그리그
6. 뭉크
7. 비겔란
1. 근대 민족문학의 탄생
14세기 말부터 덴마크에 강제 병탄 당했던 노르웨이는 당시..
Computer error 분석 (조립시) 컴퓨터를 조립하다가 문제가 생겼나요?
혹시 삐하는 경고음이 들려서 당황 하셨나요?
직접 원인과 대응책을 알려드립니다.
Computer error 시
1.window media player error code 식별
미디어플레이어 사용시 야..
C+ 포커게임프로그램 소스파일 /*
파일명 : main.cpp
프로그램 : poker 프로젝트의 main함수 파일
내용 : 포커게임 시뮬레이션(가상실험) 프로젝트
작성자 : 손민균 200658117
작성일 : 2010. 11. 18.
*/
#include poker.h
int main(void)
{
..
디지털오디오 코덱 디지털 오디오 포맷(AIFF,AU,CDA,DIG,KAR,MID,MOD,M3D)과
디지털 오디오 압축 포맷(MP1,2,3,MPEG-2,RA,RAM,WAV,WRK,ADPCM,A-law,VQF,ATRAC3, Ogg Vorbis)의 기술적 특징
먼저, 레포트의 제목은 위와 같지만 과목..
13 인터페이스 추상클래스 C# 프로그래밍(인터페이스 추상 클래스)
추상화는 '추상 클래스'나 '인터페이스'로 달성 가능.
추상 클래스는 구현이다.
추상 클래스는 인터페이스와 클래스 중간에 있지만
추상 클래스
인터페이스와 추상 클래스 ..