프로그래밍/Algorithm

Algorithm Study 1 - 1주차

seungdols 2016. 4. 30. 17:32

Ed

외부:활동 티스토리

알고리즘 스터디 - 1일차

4/30(토) 알고리즘 스터디1

자료구조란 무엇일까?

A) 일련의 자료를 집합형태로 쌓을 수 있는 구조를 말한다고 생각한다.
실생활에서 장에 그릇을 놓는 다면 찬장, 책을 모아 두면 책장이 되는 것 처럼 ‘틀’이라고 생각 할 수 있다.
그런 의미로 볼 수 있다고 생각한다. 컴퓨터로 치면 데이터 집합인 배열, 리스트 등등도 그러한 경우
결국 어떤 용도로 쓸 것인지가 중요하다. 결국 자료구조의 용도는 무엇을 담을지에 대한 초점이다.

팀원) 사용하기 편하게 & 빠르게 만드는게 자료구조. - 효율성 위주 ( 목적성 위주로 생각해도 될 것 같다.)

자료구조를 왜 사용할까?

A) 나는 프로그래머의 편의성인 것 같다. 우선 컴퓨터 프로그래밍에서 자료구조가 생긴 이유는 각 자료형의 진화 역사를 보면 알 수 있다고 생각한다.
초기에는 int, char, float,double등 primitive type만 존재했으나, 동등한(equivalent) type을 여러 개 생성 하는 방법이 필요해 진 것이다. 그게 바로 Array이고, 그 이후에 다른 Type도 같이 사용하고 싶어서 나온 개념은 Struct이다. 이는 다양한 Type을 한데 모아 사용하고자 함이다. 그러다가 순간 순간에만 메모리 효율성을 위해 사용하고자 해서 나온 구조가 Union이고, Method(행위)까지 추가하게 된 개념이 class라고 생각한다. 결국 프로그래머의 편의성에 대한 점도 일부 맞지 않을까 ?

팀원 ) 자료들에 사용하는데 초점을 맞춰서 생각!

  • 사용할 때, 어떤 부분을 초점을 맞추는지에 대해 목적이 다르기에 각기 필요한 자료구조(시간/메모리)

왜 다양한 자료구조가 있으며, 자료구조의 선택 기준은 무엇일까?

A) 자료구조의 선택 기준은 상황에 따른 목적이 중요할 것으로 생각 된다. 어떤 자료가 특정 집합으로 구성되어 있을 때 이것을 원하는 바(목적)의 형태로 가공하기 쉽고, 자료 처리를 쉽게 할 수 있는 구조가 상황마다 다르기 때문이다.

팀원 )

  • 목적을 실현하는데 중요한 효율성(시간/공간)
  • 얼마나 빠른 시간/제한 된 시간에서 답을 도출하는지

알고리즘이란 무엇일까??

A)알고리즘은 일련의 처리 절차이다. 단, 여기서 중요한점은 간략함이 될 것 같다. 부수적인 것들이 많아지면 알고리즘이라 부르기 어렵고 Logic이라 부르는 것이 더 알맞는 표현일 것 같다. 부수적인 것이 없는 처리 절차를 표현한 것이 알고리즘이며, 알고리즘은 시간 복잡도, 공간 복잡도를 따져야 할 만큼 중요한 처리 절차의 목적을 포함하고 있다.

즉, 알고리즘과 자료구조의 차이점은 자료구조는 ‘데이터를 저장하는 틀’이고, 알고리즘은 처리 절차이다.
알고리즘에서 자료구조를 사용한다고 표현 할 수 있겠다.

왜 다양한 알고리즘이 존재할까??

A)상황마다 매번 같은 알고리즘을 쓸 수 없을 것이 첫 번째 이유라 생각한다. 정렬 기법도 다양한 이유가 목적이 다르기때문에 달라진다. 흔하게 사용하는 Quick Sort라던지, Insertion Sort등 속도가 다르고, 정렬시 사용하는 공간(Space)이 다르다. 즉, 정보를 처리하는 목적에 따라 시간에 High-Cost를 투자 할 것인지? 공간에 High-Cost를 투자 할 것인지가 모든 개발 상황마다 다르게 적용이 될 수 있으므로, 알고리즘은 다양해진다. 상황이 다양하고, 목적도 다양하기에 다양한 알고리즘을 만들고 사용 한다.

배열의 주요 특징은 무엇?

구조적 데이터 타입(Structured data type) : 여러 데이터를 묶어서 하나의 단위로 처리하는 데이터 타입
배열 - 같은 자료형의 모임(homogeneous)이며, 저장하는 자료형태는 Equivalent Type이다.

배열의 크기 (첨자 지정)

  1. Static
    • 정적으로 범위가 고정
    • 예 ) static int a[100];
  2. Fixed-Stack dynamic
    • 범위는 정적으로 고정 , 할당은 Stack에 할당되어 효율성 증가
    • 예 ) int a[100];//local variable
  3. Stack dynamic - 범위가 동적으로 결정/메모리 할당도 동적(실행시간에 됨)
    • stack에 할당
    • 예 ) int size = scanner.nextInt();
    • int [] arr = new int [size];
    • 단, 최신 C는 가능하나, VS에서는 지원을 아직 안 할 가능성..GCC에서는 가능할지도 ?
  4. Fixed heap dynamic - 동적 할당 후 크기가 고정
    • 동적/할당 후 크기는 고정 stack이 아닌 Heap 메모리 사용
    • C/C++ : malloc / free for arrays
    • C++ : new & delete
    • Java / C# : new
    • C# : Class2[] c2 = new Class2[20];
  5. Heap-dynamic - Heap 영역 할당 크기가 동적으로 변화
    • C# : List<String> stringList = new List<String>();
언어별 첨자 검사
  • C/C++, Fortran, Perl : 첨자 범위 검사 명세 없음.
  • Java, ML, C# : 첨자의 범위를 명시함.
  • Ada : 기본은 첨자 범위 검사 그러나 하지 않을 가능성도 높다.

또한, 일반적인 언어는 첨자 하한이 0인데 반면, Ada, Perl의 경우 음수도 가능하다.
바꿔서 말하면, 보통의 언어는 Index -> 0 부터 시작, Ada, Perl의 언어는 지정한 index(음수가능)부터 가능하다

원소들의 실제 메모리 위치

정해진 사이즈만큼 연속적인 공간에 할당 된다.

1차원 배열의 경우

A[0] A[1] A[2]
204 208 212

1차원 배열 주소 공식

A[i] = base * (i - a) * size
base : 시작 주소 (A[0]가 시작주소)
a : 첫번 째 원소의 첨자 (음수가 아니면 0)
Size : 각 원소의 크기

A[n][m]의 첫 번째 원소의 행과 열의 첨자는 a
base : 시작 주소
size : 원소 크기

row-major

실제 메모리에 저장되는 위치가 행 중심으로 저장 된다.
A[1][1] , A[1][2] , A[1][3] … 식으로 저장 된다.
대부분의 언어에서 사용.
A[i][j] = base + (m * (i-a) + (j-a)) * size

column-major

실제 메모리에 저장되는 위치가 열 중심으로 저장 된다.
A[1][1] , A[2][1] , A[3][1] … 식으로 저장 된다.
주로 Fortran 계열에서 사용.
A[i][j] = base + (n * (j-a) + (i-a)) * size

선언,생성,초기화,원소접근방법

선언

int arr[100]; - C
int[] arr = new int[100]; - Java

검색

  • index를 통해 직접 접근/처음 부터 끝까지 전체 순회

삭제

  • 해당 index에 해당하는 공간 삭제 후 빈 공간을 데이터 이동하여 빈 공간이 없도록 함.

삽입

  • index에 해당하는 공간에 값 대입, 주로 끝에 데이터를 삽입.
퀴즈
1.int main()
2.
{
3. int arr[5] = {1,2,3,4,5};
4. printf("%d %d\n", arr[5] , 5[arr]);
5.}

위 코드에서 이상한 점을 발견 하셨나요?
왜 그렇게 되는지는 한 번 공부해보시기 바랍니다.

생각해볼 문제!

컴퓨터의 메모리 영역 관련 자료 : 메모리 영역 참고

  • 메모리 할당( 정적 메모리 할당, 동적 메모리 할당 )의 비교
    • 정적 할당
    • 동적 메모리 할당
  • 저장된 원소들의 자료형( 배열 vs 구조체 )에 따른 비교
  • 추상자료형(ADT)와 자료구조(Data Structure)의 비교 및 구분
리스트의 개념?

쉽게 생각하면 정보의 나열이라고 생각 할 수 있는데, 순서가 있다.

  • arrayList
  • LinkedList
두 구현방법의 특징과 비교, 장단점, 사용되는 예

특징

  1. ArrayList의 경우 배열 구조를 사용하므로 직접 접근이 가능하다.
  2. LinkedList의 경우 확장이 용이하다.

비교

  • ArrayList의 경우

    • 삽입은 빠르다. 단, 삭제연산에는 많은 비용이 발생한다.
    • 추가적으로 확장에 불리한 구조를 가진다.
    • 검색도 빠르다.
  • LinkedList의 경우
    • 삽입이 느리다.
    • 순차검색!!
    • 삭제는 편리하다.
왜 리스트를 구현함에 있어, 다양한 방법이 존재할까?
  • 효율성에 따라 사용처가 다르기 때문이 아닐까 생각해본다. 어떤 곳은 검색이 중요하면, 배열이 더 편리할 것이다.
  • 공간 효율성을 중요하게 생각하는 곳이라면 배열이 좋다.
리스트의 주요 연산 및 주의 사항
  • 삽입의 3가지 경우( 공백리스트인 경우, 리스트의 맨처음에 삽입, 리스트의 중간에 삽입 )

  • 삭제의 2가지 경우( 맨 앞의 노드 삭제, 중간의 노드 삭제 )

  • 삭제 및 검색시 중복자료를 허용하는 경우와 그렇지 않는 경우

    • 중복을 허용하는 경우와 그렇지 않은경우의 차이가 존재함.
다양한 리스트의 비교 및 존재 이유, 사용 경우
  • 단순 연결 리스트
  • 이중 연결 리스트
  • 이중 말단 연결 리스트
  • 원형 연결 리스트

스택이란?

  • 쉽게 생각하자면, 그릇 쌓기로 생각할 수 있다. 자료구조 형태가 그릇 쌓기처럼 구성 되어 있는 것이다.
  • 컴퓨터용어로 표현하면, LIFO(Last In First Out)의 특징을 갖는 구조이다.

스택의 연산

  • 삽입
    • 그릇은 위로만 쌓을 수 있다.
  • 삭제
    • 그릇은 위로만 뺄 수 있다. ( 중간 것을 빼면 그릇이 깨진다. - 주인한테 혼난다(컴퓨터로 치면 OS?))

스택의 실제 사용 예

  • 계산기
    스택의 구현
    • Array
    • List

큐란 ?

  • 은행에서 순서표를 받고 기다리는 행위와 비슷하다.
  • 컴퓨터용어로 표현하면, FIFO(First In First Out)의 특징을 갖는 구조이다.

큐의 연산

  • 삽입
  • 삭제

큐의 사용 예

  • OS의 스케쥴링, BFS의 정보 저장, 그래프의 사이클 찾기, 네트워크 통신 ?

큐의 구현과 특징, 비교

  • Array
  • List

큐의 종류와 존재 이유 특징, 차이점 비교

큐 - 관련 colomy.tistory.com

  • 선형큐

    • 일렬로 대기표를 받는 공간이라고 생각하면 쉬우며, 선형큐는 완벽한 순서 절차를 위해 존재한다고 생각함.
    • 배열로 구현시 데이터 이동이 빈번하다.
  • 원형큐

    • 흔히 배열로 구현할 수 있으며, % 연산자를 활용해 indexing이 가능하다.
    • 장점
      • Node형태 보다 간결하고, 쉬운 구현
    • 단점
      • 데이터 삭제시 데이터의 이동이 빈번하다.
      • 포화상태와 공백상태를 구분하기 위해 1개의 공간이 유휴공간으로 지정되어야한다.
  • 덱(Dequeue)

    • 기존 큐와는 다르게 앞/뒤로 out이 가능한 형태의 큐로 기존 큐와는 다르다.
    • 먼저 온 데이터가 먼저 Out될 수 있고, 제일 늦게 온 데이터가 Out될 수 있는 구조이므로 스택과 큐의 혼용 개념이라고 생각한다.
    • 보통 일반적으로 이중 연결 링크드 리스트로 구현한다.
@%28%uC678%uBD80%3A%uD65C%uB3D9%29%5B%uD2F0%uC2A4%uD1A0%uB9AC%5D%0A%23%20%uC54C%uACE0%uB9AC%uC998%20%uC2A4%uD130%uB514%20-%201%uC77C%uCC28%0A4/30%28%uD1A0%29%20%uC54C%uACE0%uB9AC%uC998%20%uC2A4%uD130%uB5141%0A%0A%23%23%23%20%uC790%uB8CC%uAD6C%uC870%uB780%20%uBB34%uC5C7%uC77C%uAE4C%3F%0A%0AA%29%20%uC77C%uB828%uC758%20%uC790%uB8CC%uB97C%20%uC9D1%uD569%uD615%uD0DC%uB85C%20%uC313%uC744%20%uC218%20%uC788%uB294%20%uAD6C%uC870%uB97C%20%uB9D0%uD55C%uB2E4%uACE0%20%uC0DD%uAC01%uD55C%uB2E4.%20%0A%uC2E4%uC0DD%uD65C%uC5D0%uC11C%20%uC7A5%uC5D0%20%uADF8%uB987%uC744%20%uB193%uB294%20%uB2E4%uBA74%20%uCC2C%uC7A5%2C%20%uCC45%uC744%20%uBAA8%uC544%20%uB450%uBA74%20%uCC45%uC7A5%uC774%20%uB418%uB294%20%uAC83%20%uCC98%uB7FC%20%27%uD2C0%27%uC774%uB77C%uACE0%20%uC0DD%uAC01%20%uD560%20%uC218%20%uC788%uB2E4.%0A%uADF8%uB7F0%20%uC758%uBBF8%uB85C%20%uBCFC%20%uC218%20%uC788%uB2E4%uACE0%20%uC0DD%uAC01%uD55C%uB2E4.%20%uCEF4%uD4E8%uD130%uB85C%20%uCE58%uBA74%20%uB370%uC774%uD130%20%uC9D1%uD569%uC778%20%uBC30%uC5F4%2C%20%uB9AC%uC2A4%uD2B8%20%uB4F1%uB4F1%uB3C4%20%uADF8%uB7EC%uD55C%20%uACBD%uC6B0%0A%uACB0%uAD6D%20%uC5B4%uB5A4%20%uC6A9%uB3C4%uB85C%20%uC4F8%20%uAC83%uC778%uC9C0%uAC00%20%uC911%uC694%uD558%uB2E4.%20%uACB0%uAD6D%20%uC790%uB8CC%uAD6C%uC870%uC758%20%uC6A9%uB3C4%uB294%20%uBB34%uC5C7%uC744%20%uB2F4%uC744%uC9C0%uC5D0%20%uB300%uD55C%20%uCD08%uC810%uC774%uB2E4.%20%0A%0A%uD300%uC6D0%29%20%uC0AC%uC6A9%uD558%uAE30%20%uD3B8%uD558%uAC8C%20%26%20%uBE60%uB974%uAC8C%20%uB9CC%uB4DC%uB294%uAC8C%20%uC790%uB8CC%uAD6C%uC870.%20-%20%uD6A8%uC728%uC131%20%uC704%uC8FC%20%28%20%uBAA9%uC801%uC131%20%uC704%uC8FC%uB85C%20%uC0DD%uAC01%uD574%uB3C4%20%uB420%20%uAC83%20%uAC19%uB2E4.%29%0A%0A%23%23%23%20%uC790%uB8CC%uAD6C%uC870%uB97C%20%uC65C%20%uC0AC%uC6A9%uD560%uAE4C%3F%0A%0AA%29%20%uB098%uB294%20%uD504%uB85C%uADF8%uB798%uBA38%uC758%20%uD3B8%uC758%uC131%uC778%20%uAC83%20%uAC19%uB2E4.%20%uC6B0%uC120%20%uCEF4%uD4E8%uD130%20%uD504%uB85C%uADF8%uB798%uBC0D%uC5D0%uC11C%20%uC790%uB8CC%uAD6C%uC870%uAC00%20%uC0DD%uAE34%20%uC774%uC720%uB294%20%uAC01%20%uC790%uB8CC%uD615%uC758%20%uC9C4%uD654%20%uC5ED%uC0AC%uB97C%20%uBCF4%uBA74%20%uC54C%20%uC218%20%uC788%uB2E4%uACE0%20%uC0DD%uAC01%uD55C%uB2E4.%20%0A%uCD08%uAE30%uC5D0%uB294%20int%2C%20char%2C%20float%2Cdouble%uB4F1%20primitive%20type%uB9CC%20%uC874%uC7AC%uD588%uC73C%uB098%2C%20%uB3D9%uB4F1%uD55C%28equivalent%29%20type%uC744%20%uC5EC%uB7EC%20%uAC1C%20%uC0DD%uC131%20%uD558%uB294%20%uBC29%uBC95%uC774%20%uD544%uC694%uD574%20%uC9C4%20%uAC83%uC774%uB2E4.%20%uADF8%uAC8C%20%uBC14%uB85C%20Array%uC774%uACE0%2C%20%uADF8%20%uC774%uD6C4%uC5D0%20%uB2E4%uB978%20Type%uB3C4%20%uAC19%uC774%20%uC0AC%uC6A9%uD558%uACE0%20%uC2F6%uC5B4%uC11C%20%uB098%uC628%20%uAC1C%uB150%uC740%20Struct%uC774%uB2E4.%20%uC774%uB294%20%uB2E4%uC591%uD55C%20Type%uC744%20%uD55C%uB370%20%uBAA8%uC544%20%uC0AC%uC6A9%uD558%uACE0%uC790%20%uD568%uC774%uB2E4.%20%uADF8%uB7EC%uB2E4%uAC00%20%uC21C%uAC04%20%uC21C%uAC04%uC5D0%uB9CC%20%uBA54%uBAA8%uB9AC%20%uD6A8%uC728%uC131%uC744%20%uC704%uD574%20%uC0AC%uC6A9%uD558%uACE0%uC790%20%uD574%uC11C%20%uB098%uC628%20%uAD6C%uC870%uAC00%20Union%uC774%uACE0%2C%20Method%28%uD589%uC704%29%uAE4C%uC9C0%20%uCD94%uAC00%uD558%uAC8C%20%uB41C%20%uAC1C%uB150%uC774%20class%uB77C%uACE0%20%uC0DD%uAC01%uD55C%uB2E4.%20%uACB0%uAD6D%20%uD504%uB85C%uADF8%uB798%uBA38%uC758%20%uD3B8%uC758%uC131%uC5D0%20%uB300%uD55C%20%uC810%uB3C4%20%uC77C%uBD80%20%uB9DE%uC9C0%20%uC54A%uC744%uAE4C%20%3F%0A%0A%uD300%uC6D0%20%29%20%uC790%uB8CC%uB4E4%uC5D0%20%uC0AC%uC6A9%uD558%uB294%uB370%20%uCD08%uC810%uC744%20%uB9DE%uCDB0%uC11C%20%uC0DD%uAC01%21%0A-%20%uC0AC%uC6A9%uD560%20%uB54C%2C%20%uC5B4%uB5A4%20%uBD80%uBD84%uC744%20%uCD08%uC810%uC744%20%uB9DE%uCD94%uB294%uC9C0%uC5D0%20%uB300%uD574%20%uBAA9%uC801%uC774%20%uB2E4%uB974%uAE30%uC5D0%20%uAC01%uAE30%20%uD544%uC694%uD55C%20%uC790%uB8CC%uAD6C%uC870%28%uC2DC%uAC04/%uBA54%uBAA8%uB9AC%29%0A%20%0A%0A%23%23%23%20%uC65C%20%uB2E4%uC591%uD55C%20%uC790%uB8CC%uAD6C%uC870%uAC00%20%uC788%uC73C%uBA70%2C%20%uC790%uB8CC%uAD6C%uC870%uC758%20%uC120%uD0DD%20%uAE30%uC900%uC740%20%uBB34%uC5C7%uC77C%uAE4C%3F%0AA%29%20%uC790%uB8CC%uAD6C%uC870%uC758%20%uC120%uD0DD%20%uAE30%uC900%uC740%20%uC0C1%uD669%uC5D0%20%uB530%uB978%20%uBAA9%uC801%uC774%20%uC911%uC694%uD560%20%uAC83%uC73C%uB85C%20%uC0DD%uAC01%20%uB41C%uB2E4.%20%uC5B4%uB5A4%20%uC790%uB8CC%uAC00%20%uD2B9%uC815%20%uC9D1%uD569%uC73C%uB85C%20%uAD6C%uC131%uB418%uC5B4%20%uC788%uC744%20%uB54C%20%uC774%uAC83%uC744%20%uC6D0%uD558%uB294%20%uBC14%28%uBAA9%uC801%29%uC758%20%uD615%uD0DC%uB85C%20%uAC00%uACF5%uD558%uAE30%20%uC27D%uACE0%2C%20%uC790%uB8CC%20%uCC98%uB9AC%uB97C%20%uC27D%uAC8C%20%uD560%20%uC218%20%uC788%uB294%20%uAD6C%uC870%uAC00%20%uC0C1%uD669%uB9C8%uB2E4%20%uB2E4%uB974%uAE30%20%uB54C%uBB38%uC774%uB2E4.%0A%0A%uD300%uC6D0%20%29%0A-%20%uBAA9%uC801%uC744%20%uC2E4%uD604%uD558%uB294%uB370%20%uC911%uC694%uD55C%20%uD6A8%uC728%uC131%28%uC2DC%uAC04/%uACF5%uAC04%29%0A-%20%uC5BC%uB9C8%uB098%20%uBE60%uB978%20%uC2DC%uAC04/%uC81C%uD55C%20%uB41C%20%uC2DC%uAC04%uC5D0%uC11C%20%uB2F5%uC744%20%uB3C4%uCD9C%uD558%uB294%uC9C0%0A%0A%0A%23%23%23%20%uC54C%uACE0%uB9AC%uC998%uC774%uB780%20%uBB34%uC5C7%uC77C%uAE4C%3F%3F%0AA%29%uC54C%uACE0%uB9AC%uC998%uC740%20%uC77C%uB828%uC758%20%uCC98%uB9AC%20%uC808%uCC28%uC774%uB2E4.%20%uB2E8%2C%20%uC5EC%uAE30%uC11C%20%uC911%uC694%uD55C%uC810%uC740%20%uAC04%uB7B5%uD568%uC774%20%uB420%20%uAC83%20%uAC19%uB2E4.%20%uBD80%uC218%uC801%uC778%20%uAC83%uB4E4%uC774%20%uB9CE%uC544%uC9C0%uBA74%20%uC54C%uACE0%uB9AC%uC998%uC774%uB77C%20%uBD80%uB974%uAE30%20%uC5B4%uB835%uACE0%20Logic%uC774%uB77C%20%uBD80%uB974%uB294%20%uAC83%uC774%20%uB354%20%uC54C%uB9DE%uB294%20%uD45C%uD604%uC77C%20%uAC83%20%uAC19%uB2E4.%20%uBD80%uC218%uC801%uC778%20%uAC83%uC774%20%uC5C6%uB294%20%uCC98%uB9AC%20%uC808%uCC28%uB97C%20%uD45C%uD604%uD55C%20%uAC83%uC774%20%uC54C%uACE0%uB9AC%uC998%uC774%uBA70%2C%20%uC54C%uACE0%uB9AC%uC998%uC740%20%uC2DC%uAC04%20%uBCF5%uC7A1%uB3C4%2C%20%uACF5%uAC04%20%uBCF5%uC7A1%uB3C4%uB97C%20%uB530%uC838%uC57C%20%uD560%20%uB9CC%uD07C%20%uC911%uC694%uD55C%20%uCC98%uB9AC%20%uC808%uCC28%uC758%20%uBAA9%uC801%uC744%20%uD3EC%uD568%uD558%uACE0%20%uC788%uB2E4.%0A%0A%uC989%2C%20%uC54C%uACE0%uB9AC%uC998%uACFC%20%uC790%uB8CC%uAD6C%uC870%uC758%20%uCC28%uC774%uC810%uC740%20%uC790%uB8CC%uAD6C%uC870%uB294%20%27%uB370%uC774%uD130%uB97C%20%uC800%uC7A5%uD558%uB294%20%uD2C0%27%uC774%uACE0%2C%20%uC54C%uACE0%uB9AC%uC998%uC740%20%uCC98%uB9AC%20%uC808%uCC28%uC774%uB2E4.%20%0A%uC54C%uACE0%uB9AC%uC998%uC5D0%uC11C%20%uC790%uB8CC%uAD6C%uC870%uB97C%20%uC0AC%uC6A9%uD55C%uB2E4%uACE0%20%uD45C%uD604%20%uD560%20%uC218%20%uC788%uACA0%uB2E4.%0A%0A%23%23%23%20%uC65C%20%uB2E4%uC591%uD55C%20%uC54C%uACE0%uB9AC%uC998%uC774%20%uC874%uC7AC%uD560%uAE4C%3F%3F%0AA%29%uC0C1%uD669%uB9C8%uB2E4%20%uB9E4%uBC88%20%uAC19%uC740%20%uC54C%uACE0%uB9AC%uC998%uC744%20%uC4F8%20%uC218%20%uC5C6%uC744%20%uAC83%uC774%20%uCCAB%20%uBC88%uC9F8%20%uC774%uC720%uB77C%20%uC0DD%uAC01%uD55C%uB2E4.%20%uC815%uB82C%20%uAE30%uBC95%uB3C4%20%uB2E4%uC591%uD55C%20%uC774%uC720%uAC00%20%uBAA9%uC801%uC774%20%uB2E4%uB974%uAE30%uB54C%uBB38%uC5D0%20%uB2EC%uB77C%uC9C4%uB2E4.%20%uD754%uD558%uAC8C%20%uC0AC%uC6A9%uD558%uB294%20Quick%20Sort%uB77C%uB358%uC9C0%2C%20Insertion%20Sort%uB4F1%20%uC18D%uB3C4%uAC00%20%uB2E4%uB974%uACE0%2C%20%uC815%uB82C%uC2DC%20%uC0AC%uC6A9%uD558%uB294%20%uACF5%uAC04%28Space%29%uC774%20%uB2E4%uB974%uB2E4.%20%uC989%2C%20%uC815%uBCF4%uB97C%20%uCC98%uB9AC%uD558%uB294%20%uBAA9%uC801%uC5D0%20%uB530%uB77C%20%uC2DC%uAC04%uC5D0%20High-Cost%uB97C%20%uD22C%uC790%20%uD560%20%uAC83%uC778%uC9C0%3F%20%uACF5%uAC04%uC5D0%20High-Cost%uB97C%20%uD22C%uC790%20%uD560%20%uAC83%uC778%uC9C0%uAC00%20%uBAA8%uB4E0%20%uAC1C%uBC1C%20%uC0C1%uD669%uB9C8%uB2E4%20%uB2E4%uB974%uAC8C%20%uC801%uC6A9%uC774%20%uB420%20%uC218%20%uC788%uC73C%uBBC0%uB85C%2C%20%uC54C%uACE0%uB9AC%uC998%uC740%20%uB2E4%uC591%uD574%uC9C4%uB2E4.%20%uC0C1%uD669%uC774%20%uB2E4%uC591%uD558%uACE0%2C%20%uBAA9%uC801%uB3C4%20%uB2E4%uC591%uD558%uAE30%uC5D0%20%uB2E4%uC591%uD55C%20%uC54C%uACE0%uB9AC%uC998%uC744%20%uB9CC%uB4E4%uACE0%20%uC0AC%uC6A9%20%uD55C%uB2E4.%0A%0A%23%23%23%23%20%uBC30%uC5F4%uC758%20%uC8FC%uC694%20%uD2B9%uC9D5%uC740%20%uBB34%uC5C7%3F%0A%uAD6C%uC870%uC801%20%uB370%uC774%uD130%20%uD0C0%uC785%28Structured%20data%20type%29%20%3A%20%uC5EC%uB7EC%20%uB370%uC774%uD130%uB97C%20%uBB36%uC5B4%uC11C%20%uD558%uB098%uC758%20%uB2E8%uC704%uB85C%20%uCC98%uB9AC%uD558%uB294%20%uB370%uC774%uD130%20%uD0C0%uC785%0A%uBC30%uC5F4%20-%20%uAC19%uC740%20%uC790%uB8CC%uD615%uC758%20%uBAA8%uC784%28homogeneous%29%uC774%uBA70%2C%20%uC800%uC7A5%uD558%uB294%20%uC790%uB8CC%uD615%uD0DC%uB294%20Equivalent%20Type%uC774%uB2E4.%0A%0A%23%23%23%23%20%uBC30%uC5F4%uC758%20%uD06C%uAE30%20%28%uCCA8%uC790%20%uC9C0%uC815%29%0A1.%20Static%20%20%0A%20%20*%20%uC815%uC801%uC73C%uB85C%20%uBC94%uC704%uAC00%20%uACE0%uC815%0A%20%20*%20%uC608%20%29%20static%20int%20a%5B100%5D%3B%0A2.%20Fixed-Stack%20dynamic%0A%20%20*%20%uBC94%uC704%uB294%20%uC815%uC801%uC73C%uB85C%20%uACE0%uC815%20%2C%20%uD560%uB2F9%uC740%20Stack%uC5D0%20%uD560%uB2F9%uB418%uC5B4%20%uD6A8%uC728%uC131%20%uC99D%uAC00%0A%20%20*%20%uC608%20%29%20int%20a%5B100%5D%3B//local%20variable%0A3.%20Stack%20dynamic%20-%20%uBC94%uC704%uAC00%20%uB3D9%uC801%uC73C%uB85C%20%uACB0%uC815/%uBA54%uBAA8%uB9AC%20%uD560%uB2F9%uB3C4%20%uB3D9%uC801%28%uC2E4%uD589%uC2DC%uAC04%uC5D0%20%uB428%29%0A%20%20*%20stack%uC5D0%20%uD560%uB2F9%0A%20%20*%20%uC608%20%29%20int%20size%20%3D%20scanner.nextInt%28%29%3B%0A%20%20*%20int%20%5B%5D%20arr%20%3D%20new%20int%20%5Bsize%5D%3B%0A%20%20*%20%uB2E8%2C%20%uCD5C%uC2E0%20C%uB294%20%uAC00%uB2A5%uD558%uB098%2C%20VS%uC5D0%uC11C%uB294%20%uC9C0%uC6D0%uC744%20%uC544%uC9C1%20%uC548%20%uD560%20%uAC00%uB2A5%uC131..GCC%uC5D0%uC11C%uB294%20%uAC00%uB2A5%uD560%uC9C0%uB3C4%20%3F%0A4.%20%20Fixed%20heap%20dynamic%20-%20%uB3D9%uC801%20%uD560%uB2F9%20%uD6C4%20%uD06C%uAE30%uAC00%20%uACE0%uC815%0A%20%20*%20%uB3D9%uC801/%uD560%uB2F9%20%uD6C4%20%uD06C%uAE30%uB294%20%uACE0%uC815%20stack%uC774%20%uC544%uB2CC%20Heap%20%uBA54%uBAA8%uB9AC%20%uC0AC%uC6A9%0A%20%20*%20C/C++%20%3A%20malloc%20/%20free%20for%20arrays%0A%20%20*%20C++%20%3A%20new%20%26%20delete%0A%20%20*%20Java%20/%20C%23%20%3A%20new%0A%20%20*%20C%23%20%3A%20Class2%5B%5D%20c2%20%3D%20new%20Class2%5B20%5D%3B%0A5.%20Heap-dynamic%20-%20Heap%20%uC601%uC5ED%20%uD560%uB2F9%20%uD06C%uAE30%uAC00%20%uB3D9%uC801%uC73C%uB85C%20%uBCC0%uD654%0A%20%20*%20C%23%20%3A%20%60List%3CString%3E%20stringList%20%3D%20new%20List%3CString%3E%28%29%3B%60%0A%0A%23%23%23%23%23%20%uC5B8%uC5B4%uBCC4%20%uCCA8%uC790%20%uAC80%uC0AC%20%0A-%20C/C++%2C%20Fortran%2C%20Perl%20%3A%20%uCCA8%uC790%20%uBC94%uC704%20%uAC80%uC0AC%20%uBA85%uC138%20%uC5C6%uC74C.%0A-%20Java%2C%20ML%2C%20C%23%20%3A%20%uCCA8%uC790%uC758%20%uBC94%uC704%uB97C%20%uBA85%uC2DC%uD568.%0A-%20Ada%20%3A%20%uAE30%uBCF8%uC740%20%uCCA8%uC790%20%uBC94%uC704%20%uAC80%uC0AC%20%uADF8%uB7EC%uB098%20%uD558%uC9C0%20%uC54A%uC744%20%uAC00%uB2A5%uC131%uB3C4%20%uB192%uB2E4.%0A%0A%uB610%uD55C%2C%20%uC77C%uBC18%uC801%uC778%20%uC5B8%uC5B4%uB294%20%uCCA8%uC790%20%uD558%uD55C%uC774%200%uC778%uB370%20%uBC18%uBA74%2C%20Ada%2C%20Perl%uC758%20%uACBD%uC6B0%20%uC74C%uC218%uB3C4%20%uAC00%uB2A5%uD558%uB2E4.%0A%uBC14%uAFD4%uC11C%20%uB9D0%uD558%uBA74%2C%20%uBCF4%uD1B5%uC758%20%uC5B8%uC5B4%uB294%20Index%20-%3E%200%20%uBD80%uD130%20%uC2DC%uC791%2C%20Ada%2C%20Perl%uC758%20%uC5B8%uC5B4%uB294%20%uC9C0%uC815%uD55C%20index%28%uC74C%uC218%uAC00%uB2A5%29%uBD80%uD130%20%uAC00%uB2A5%uD558%uB2E4%0A%0A%23%23%23%23%20%uC6D0%uC18C%uB4E4%uC758%20%uC2E4%uC81C%20%uBA54%uBAA8%uB9AC%20%uC704%uCE58%0A%uC815%uD574%uC9C4%20%uC0AC%uC774%uC988%uB9CC%uD07C%20%uC5F0%uC18D%uC801%uC778%20%uACF5%uAC04%uC5D0%20%uD560%uB2F9%20%uB41C%uB2E4.%0A%0A1%uCC28%uC6D0%20%uBC30%uC5F4%uC758%20%uACBD%uC6B0%20%0A%0A%7C%20A%5B0%5D%20%7C%20A%5B1%5D%20%7C%20A%5B2%5D%20%7C%20%0A%7C--------%7C--------%7C---%7C%0A%7C%20%20204%20%20%7C%20%20208%20%20%7C%20212%20%7C%0A%0A1%uCC28%uC6D0%20%uBC30%uC5F4%20%uC8FC%uC18C%20%uACF5%uC2DD%0A%0A%60A%5Bi%5D%20%3D%20base%20*%20%28i%20-%20a%29%20*%20size%60%0Abase%20%3A%20%uC2DC%uC791%20%uC8FC%uC18C%20%28A%5B0%5D%uAC00%20%uC2DC%uC791%uC8FC%uC18C%29%0Aa%20%3A%20%uCCAB%uBC88%20%uC9F8%20%uC6D0%uC18C%uC758%20%uCCA8%uC790%20%28%uC74C%uC218%uAC00%20%uC544%uB2C8%uBA74%200%29%0ASize%20%3A%20%uAC01%20%uC6D0%uC18C%uC758%20%uD06C%uAE30%0A%0AA%5Bn%5D%5Bm%5D%uC758%20%uCCAB%20%uBC88%uC9F8%20%uC6D0%uC18C%uC758%20%uD589%uACFC%20%uC5F4%uC758%20%uCCA8%uC790%uB294%20a%0Abase%20%3A%20%uC2DC%uC791%20%uC8FC%uC18C%0Asize%20%3A%20%uC6D0%uC18C%20%uD06C%uAE30%0A%23%23%23%23%23%20row-major%0A%0A%uC2E4%uC81C%20%uBA54%uBAA8%uB9AC%uC5D0%20%uC800%uC7A5%uB418%uB294%20%uC704%uCE58%uAC00%20%uD589%20%uC911%uC2EC%uC73C%uB85C%20%uC800%uC7A5%20%uB41C%uB2E4.%0AA%5B1%5D%5B1%5D%20%2C%20A%5B1%5D%5B2%5D%20%2C%20A%5B1%5D%5B3%5D%20...%20%uC2DD%uC73C%uB85C%20%uC800%uC7A5%20%uB41C%uB2E4.%0A%uB300%uBD80%uBD84%uC758%20%uC5B8%uC5B4%uC5D0%uC11C%20%uC0AC%uC6A9.%0AA%5Bi%5D%5Bj%5D%20%3D%20base%20+%20%28m%20*%20%28i-a%29%20+%20%28j-a%29%29%20*%20size%0A%23%23%23%23%23%20column-major%20%0A%0A%uC2E4%uC81C%20%uBA54%uBAA8%uB9AC%uC5D0%20%uC800%uC7A5%uB418%uB294%20%uC704%uCE58%uAC00%20%uC5F4%20%uC911%uC2EC%uC73C%uB85C%20%uC800%uC7A5%20%uB41C%uB2E4.%0AA%5B1%5D%5B1%5D%20%2C%20A%5B2%5D%5B1%5D%20%2C%20A%5B3%5D%5B1%5D%20...%20%uC2DD%uC73C%uB85C%20%uC800%uC7A5%20%uB41C%uB2E4.%0A%uC8FC%uB85C%20Fortran%20%uACC4%uC5F4%uC5D0%uC11C%20%uC0AC%uC6A9.%0AA%5Bi%5D%5Bj%5D%20%3D%20base%20+%20%28n%20*%20%28j-a%29%20+%20%28i-a%29%29%20*%20size%0A%0A%23%23%23%23%20%uC120%uC5B8%2C%uC0DD%uC131%2C%uCD08%uAE30%uD654%2C%uC6D0%uC18C%uC811%uADFC%uBC29%uBC95%0A%0A%uC120%uC5B8%20%0A%0A%60int%20arr%5B100%5D%3B%60%20-%20C%0A%60int%5B%5D%20arr%20%3D%20new%20int%5B100%5D%3B%60%20-%20Java%0A%0A%uAC80%uC0C9%0A%0A-%20index%uB97C%20%uD1B5%uD574%20%uC9C1%uC811%20%uC811%uADFC/%uCC98%uC74C%20%uBD80%uD130%20%uB05D%uAE4C%uC9C0%20%uC804%uCCB4%20%uC21C%uD68C%0A%0A%uC0AD%uC81C%0A-%20%uD574%uB2F9%20index%uC5D0%20%uD574%uB2F9%uD558%uB294%20%uACF5%uAC04%20%uC0AD%uC81C%20%uD6C4%20%uBE48%20%uACF5%uAC04%uC744%20%uB370%uC774%uD130%20%uC774%uB3D9%uD558%uC5EC%20%uBE48%20%uACF5%uAC04%uC774%20%uC5C6%uB3C4%uB85D%20%uD568.%0A%0A%uC0BD%uC785%0A-%20index%uC5D0%20%uD574%uB2F9%uD558%uB294%20%uACF5%uAC04%uC5D0%20%uAC12%20%uB300%uC785%2C%20%uC8FC%uB85C%20%uB05D%uC5D0%20%uB370%uC774%uD130%uB97C%20%uC0BD%uC785.%0A%0A%23%23%23%23%23%23%uD034%uC988%0A%0A%60%60%60cpp%0Aint%20main%28%29%0A%7B%0A%20%20int%20arr%5B5%5D%20%3D%20%7B1%2C2%2C3%2C4%2C5%7D%3B%0A%20%20printf%28%22%25d%20%25d%5Cn%22%2C%20arr%5B5%5D%20%2C%205%5Barr%5D%29%3B%0A%7D%0A%60%60%60%0A%uC704%20%uCF54%uB4DC%uC5D0%uC11C%20%uC774%uC0C1%uD55C%20%uC810%uC744%20%uBC1C%uACAC%20%uD558%uC168%uB098%uC694%3F%0A%uC65C%20%uADF8%uB807%uAC8C%20%uB418%uB294%uC9C0%uB294%20%uD55C%20%uBC88%20%uACF5%uBD80%uD574%uBCF4%uC2DC%uAE30%20%uBC14%uB78D%uB2C8%uB2E4.%0A%0A%23%23%23%20%uC0DD%uAC01%uD574%uBCFC%20%uBB38%uC81C%21%0A%0A%uCEF4%uD4E8%uD130%uC758%20%uBA54%uBAA8%uB9AC%20%uC601%uC5ED%20%uAD00%uB828%20%uC790%uB8CC%20%3A%20%5B%uBA54%uBAA8%uB9AC%20%uC601%uC5ED%20%uCC38%uACE0%5D%28http%3A//dsnight.tistory.com/50%29%0A%0A-%20%uBA54%uBAA8%uB9AC%20%uD560%uB2F9%28%20%uC815%uC801%20%uBA54%uBAA8%uB9AC%20%uD560%uB2F9%2C%20%uB3D9%uC801%20%uBA54%uBAA8%uB9AC%20%uD560%uB2F9%20%29%uC758%20%uBE44%uAD50%0A%09*%20%uC815%uC801%20%uD560%uB2F9%0A%09*%20%uB3D9%uC801%20%uBA54%uBAA8%uB9AC%20%uD560%uB2F9%0A-%20%uC800%uC7A5%uB41C%20%uC6D0%uC18C%uB4E4%uC758%20%uC790%uB8CC%uD615%28%20%uBC30%uC5F4%20vs%20%uAD6C%uC870%uCCB4%20%29%uC5D0%20%uB530%uB978%20%uBE44%uAD50%0A-%20%uCD94%uC0C1%uC790%uB8CC%uD615%28ADT%29%uC640%20%uC790%uB8CC%uAD6C%uC870%28Data%20Structure%29%uC758%20%uBE44%uAD50%20%uBC0F%20%uAD6C%uBD84%0A%09%0A%23%23%23%23%23%20%uB9AC%uC2A4%uD2B8%uC758%20%uAC1C%uB150%3F%0A%uC27D%uAC8C%20%uC0DD%uAC01%uD558%uBA74%20%uC815%uBCF4%uC758%20%uB098%uC5F4%uC774%uB77C%uACE0%20%uC0DD%uAC01%20%uD560%20%uC218%20%uC788%uB294%uB370%2C%20%uC21C%uC11C%uAC00%20%uC788%uB2E4.%20%0A%0A*%20arrayList%0A*%20LinkedList%0A%0A%23%23%23%23%23%20%uB450%20%uAD6C%uD604%uBC29%uBC95%uC758%20%uD2B9%uC9D5%uACFC%20%uBE44%uAD50%2C%20%uC7A5%uB2E8%uC810%2C%20%uC0AC%uC6A9%uB418%uB294%20%uC608%0A%0A%uD2B9%uC9D5%0A1.%20ArrayList%uC758%20%uACBD%uC6B0%20%uBC30%uC5F4%20%uAD6C%uC870%uB97C%20%uC0AC%uC6A9%uD558%uBBC0%uB85C%20%uC9C1%uC811%20%uC811%uADFC%uC774%20%uAC00%uB2A5%uD558%uB2E4.%0A2.%20LinkedList%uC758%20%uACBD%uC6B0%20%uD655%uC7A5%uC774%20%uC6A9%uC774%uD558%uB2E4.%0A%0A%uBE44%uAD50%0A%0A-%20ArrayList%uC758%20%uACBD%uC6B0%0A%0A%09*%20%uC0BD%uC785%uC740%20%uBE60%uB974%uB2E4.%20%uB2E8%2C%20%uC0AD%uC81C%uC5F0%uC0B0%uC5D0%uB294%20%uB9CE%uC740%20%uBE44%uC6A9%uC774%20%uBC1C%uC0DD%uD55C%uB2E4.%0A%09*%20%uCD94%uAC00%uC801%uC73C%uB85C%20%uD655%uC7A5%uC5D0%20%uBD88%uB9AC%uD55C%20%uAD6C%uC870%uB97C%20%uAC00%uC9C4%uB2E4.%20%0A%09*%20%uAC80%uC0C9%uB3C4%20%uBE60%uB974%uB2E4.%20%0A-%20LinkedList%uC758%20%uACBD%uC6B0%0A%09*%20%uC0BD%uC785%uC774%20%uB290%uB9AC%uB2E4.%0A%09*%20%uC21C%uCC28%uAC80%uC0C9%21%21%0A%09*%20%uC0AD%uC81C%uB294%20%uD3B8%uB9AC%uD558%uB2E4.%0A%0A%23%23%23%23%23%20%uC65C%20%uB9AC%uC2A4%uD2B8%uB97C%20%uAD6C%uD604%uD568%uC5D0%20%uC788%uC5B4%2C%20%uB2E4%uC591%uD55C%20%uBC29%uBC95%uC774%20%uC874%uC7AC%uD560%uAE4C%3F%0A-%20%uD6A8%uC728%uC131%uC5D0%20%uB530%uB77C%20%uC0AC%uC6A9%uCC98%uAC00%20%uB2E4%uB974%uAE30%20%uB54C%uBB38%uC774%20%uC544%uB2D0%uAE4C%20%uC0DD%uAC01%uD574%uBCF8%uB2E4.%20%uC5B4%uB5A4%20%uACF3%uC740%20%uAC80%uC0C9%uC774%20%uC911%uC694%uD558%uBA74%2C%20%uBC30%uC5F4%uC774%20%uB354%20%uD3B8%uB9AC%uD560%20%uAC83%uC774%uB2E4.%0A-%20%uACF5%uAC04%20%uD6A8%uC728%uC131%uC744%20%uC911%uC694%uD558%uAC8C%20%uC0DD%uAC01%uD558%uB294%20%uACF3%uC774%uB77C%uBA74%20%uBC30%uC5F4%uC774%20%uC88B%uB2E4.%0A%0A%23%23%23%23%23%20%uB9AC%uC2A4%uD2B8%uC758%20%uC8FC%uC694%20%uC5F0%uC0B0%20%uBC0F%20%uC8FC%uC758%20%uC0AC%uD56D%0A%0A*%20%uC0BD%uC785%uC758%203%uAC00%uC9C0%20%uACBD%uC6B0%28%20%uACF5%uBC31%uB9AC%uC2A4%uD2B8%uC778%20%uACBD%uC6B0%2C%20%uB9AC%uC2A4%uD2B8%uC758%20%uB9E8%uCC98%uC74C%uC5D0%20%uC0BD%uC785%2C%20%uB9AC%uC2A4%uD2B8%uC758%20%uC911%uAC04%uC5D0%20%uC0BD%uC785%20%29%0A%0A*%20%uC0AD%uC81C%uC758%202%uAC00%uC9C0%20%uACBD%uC6B0%28%20%uB9E8%20%uC55E%uC758%20%uB178%uB4DC%20%uC0AD%uC81C%2C%20%uC911%uAC04%uC758%20%uB178%uB4DC%20%uC0AD%uC81C%20%29%0A%0A*%20%uC0AD%uC81C%20%uBC0F%20%uAC80%uC0C9%uC2DC%20%uC911%uBCF5%uC790%uB8CC%uB97C%20%uD5C8%uC6A9%uD558%uB294%20%uACBD%uC6B0%uC640%20%uADF8%uB807%uC9C0%20%uC54A%uB294%20%uACBD%uC6B0%0A%09*%20%uC911%uBCF5%uC744%20%uD5C8%uC6A9%uD558%uB294%20%uACBD%uC6B0%uC640%20%uADF8%uB807%uC9C0%20%uC54A%uC740%uACBD%uC6B0%uC758%20%uCC28%uC774%uAC00%20%uC874%uC7AC%uD568.%0A%0A%23%23%23%23%23%20%uB2E4%uC591%uD55C%20%uB9AC%uC2A4%uD2B8%uC758%20%uBE44%uAD50%20%uBC0F%20%uC874%uC7AC%20%uC774%uC720%2C%20%uC0AC%uC6A9%20%uACBD%uC6B0%0A%0A*%20%uB2E8%uC21C%20%uC5F0%uACB0%20%uB9AC%uC2A4%uD2B8%0A*%20%uC774%uC911%20%uC5F0%uACB0%20%uB9AC%uC2A4%uD2B8%0A*%20%uC774%uC911%20%uB9D0%uB2E8%20%uC5F0%uACB0%20%uB9AC%uC2A4%uD2B8%0A*%20%uC6D0%uD615%20%uC5F0%uACB0%20%uB9AC%uC2A4%uD2B8%0A%0A%23%23%23%20%uC2A4%uD0DD%uC774%uB780%3F%0A-%20%uC27D%uAC8C%20%uC0DD%uAC01%uD558%uC790%uBA74%2C%20%uADF8%uB987%20%uC313%uAE30%uB85C%20%uC0DD%uAC01%uD560%20%uC218%20%uC788%uB2E4.%20%uC790%uB8CC%uAD6C%uC870%20%uD615%uD0DC%uAC00%20%uADF8%uB987%20%uC313%uAE30%uCC98%uB7FC%20%uAD6C%uC131%20%uB418%uC5B4%20%uC788%uB294%20%uAC83%uC774%uB2E4.%0A-%20%uCEF4%uD4E8%uD130%uC6A9%uC5B4%uB85C%20%uD45C%uD604%uD558%uBA74%2C%20LIFO%28Last%20In%20First%20Out%29%uC758%20%uD2B9%uC9D5%uC744%20%uAC16%uB294%20%uAD6C%uC870%uC774%uB2E4.%0A%0A%uC2A4%uD0DD%uC758%20%uC5F0%uC0B0%0A-%20%uC0BD%uC785%0A%09*%20%uADF8%uB987%uC740%20%uC704%uB85C%uB9CC%20%uC313%uC744%20%uC218%20%uC788%uB2E4.%20%20%20%20%20%0A-%20%uC0AD%uC81C%0A%09*%20%uADF8%uB987%uC740%20%uC704%uB85C%uB9CC%20%uBE84%20%uC218%20%uC788%uB2E4.%20%28%20%uC911%uAC04%20%uAC83%uC744%20%uBE7C%uBA74%20%uADF8%uB987%uC774%20%uAE68%uC9C4%uB2E4.%20-%20%uC8FC%uC778%uD55C%uD14C%20%uD63C%uB09C%uB2E4%28%uCEF4%uD4E8%uD130%uB85C%20%uCE58%uBA74%20OS%3F%29%29%20%20%20%20%0A%0A%uC2A4%uD0DD%uC758%20%uC2E4%uC81C%20%uC0AC%uC6A9%20%uC608%0A%0A-%20%uACC4%uC0B0%uAE30%0A%uC2A4%uD0DD%uC758%20%uAD6C%uD604%0A%09*%20Array%0A%09*%20List%0A%0A%23%23%23%20%uD050%uB780%20%3F%0A-%20%uC740%uD589%uC5D0%uC11C%20%uC21C%uC11C%uD45C%uB97C%20%uBC1B%uACE0%20%uAE30%uB2E4%uB9AC%uB294%20%uD589%uC704%uC640%20%uBE44%uC2B7%uD558%uB2E4.%20%0A-%20%uCEF4%uD4E8%uD130%uC6A9%uC5B4%uB85C%20%uD45C%uD604%uD558%uBA74%2C%20FIFO%28First%20In%20First%20Out%29%uC758%20%uD2B9%uC9D5%uC744%20%uAC16%uB294%20%uAD6C%uC870%uC774%uB2E4.%0A%0A%uD050%uC758%20%uC5F0%uC0B0%0A*%20%uC0BD%uC785%0A*%20%uC0AD%uC81C%0A%0A%uD050%uC758%20%uC0AC%uC6A9%20%uC608%0A-%20OS%uC758%20%uC2A4%uCF00%uC974%uB9C1%2C%20BFS%uC758%20%uC815%uBCF4%20%uC800%uC7A5%2C%20%uADF8%uB798%uD504%uC758%20%uC0AC%uC774%uD074%20%uCC3E%uAE30%2C%20%uB124%uD2B8%uC6CC%uD06C%20%uD1B5%uC2E0%20%3F%0A%0A%uD050%uC758%20%uAD6C%uD604%uACFC%20%uD2B9%uC9D5%2C%20%uBE44%uAD50%0A%0A-%20Array%0A-%20List%0A%0A%uD050%uC758%20%uC885%uB958%uC640%20%uC874%uC7AC%20%uC774%uC720%20%uD2B9%uC9D5%2C%20%uCC28%uC774%uC810%20%uBE44%uAD50%0A%0A%5B%uD050%20-%20%uAD00%uB828%20colomy.tistory.com%5D%28http%3A//colomy.tistory.com/64%29%0A%0A-%20%uC120%uD615%uD050%20%0A%09*%20%uC77C%uB82C%uB85C%20%uB300%uAE30%uD45C%uB97C%20%uBC1B%uB294%20%uACF5%uAC04%uC774%uB77C%uACE0%20%uC0DD%uAC01%uD558%uBA74%20%uC26C%uC6B0%uBA70%2C%20%uC120%uD615%uD050%uB294%20%uC644%uBCBD%uD55C%20%uC21C%uC11C%20%uC808%uCC28%uB97C%20%uC704%uD574%20%uC874%uC7AC%uD55C%uB2E4%uACE0%20%uC0DD%uAC01%uD568.%0A%09*%20%uBC30%uC5F4%uB85C%20%uAD6C%uD604%uC2DC%20%uB370%uC774%uD130%20%uC774%uB3D9%uC774%20%uBE48%uBC88%uD558%uB2E4.%0A%0A-%20%uC6D0%uD615%uD050%0A%09*%20%uD754%uD788%20%uBC30%uC5F4%uB85C%20%uAD6C%uD604%uD560%20%uC218%20%uC788%uC73C%uBA70%2C%20%25%20%uC5F0%uC0B0%uC790%uB97C%20%uD65C%uC6A9%uD574%20indexing%uC774%20%uAC00%uB2A5%uD558%uB2E4.%0A%09*%20%uC7A5%uC810%0A%09%09*%20Node%uD615%uD0DC%20%uBCF4%uB2E4%20%uAC04%uACB0%uD558%uACE0%2C%20%uC26C%uC6B4%20%uAD6C%uD604%0A%09*%20%uB2E8%uC810%20%0A%09%09*%20%uB370%uC774%uD130%20%uC0AD%uC81C%uC2DC%20%uB370%uC774%uD130%uC758%20%uC774%uB3D9%uC774%20%uBE48%uBC88%uD558%uB2E4.%0A%09%09*%20%uD3EC%uD654%uC0C1%uD0DC%uC640%20%uACF5%uBC31%uC0C1%uD0DC%uB97C%20%uAD6C%uBD84%uD558%uAE30%20%uC704%uD574%201%uAC1C%uC758%20%uACF5%uAC04%uC774%20%uC720%uD734%uACF5%uAC04%uC73C%uB85C%20%uC9C0%uC815%uB418%uC5B4%uC57C%uD55C%uB2E4.%0A%09%0A-%20%uB371%28Dequeue%29%0A%09*%20%uAE30%uC874%20%uD050%uC640%uB294%20%uB2E4%uB974%uAC8C%20%uC55E/%uB4A4%uB85C%20out%uC774%20%uAC00%uB2A5%uD55C%20%uD615%uD0DC%uC758%20%uD050%uB85C%20%uAE30%uC874%20%uD050%uC640%uB294%20%uB2E4%uB974%uB2E4.%0A%09*%20%uBA3C%uC800%20%uC628%20%uB370%uC774%uD130%uAC00%20%uBA3C%uC800%20Out%uB420%20%uC218%20%uC788%uACE0%2C%20%uC81C%uC77C%20%uB2A6%uAC8C%20%uC628%20%uB370%uC774%uD130%uAC00%20Out%uB420%20%uC218%20%uC788%uB294%20%uAD6C%uC870%uC774%uBBC0%uB85C%20%uC2A4%uD0DD%uACFC%20%uD050%uC758%20%uD63C%uC6A9%20%uAC1C%uB150%uC774%uB77C%uACE0%20%uC0DD%uAC01%uD55C%uB2E4.%20%20%20%20%20%0A%09*%20%uBCF4%uD1B5%20%uC77C%uBC18%uC801%uC73C%uB85C%20%uC774%uC911%20%uC5F0%uACB0%20%uB9C1%uD06C%uB4DC%20%uB9AC%uC2A4%uD2B8%uB85C%20%uAD6C%uD604%uD55C%uB2E4.%0A%0A%0A


반응형

'프로그래밍 > Algorithm' 카테고리의 다른 글

무방향 그래프 - DFS/BFS  (0) 2016.05.14
Algorithm Study 1 - 2주차  (0) 2016.05.09
에라토스테네스의 체  (0) 2015.11.04
알고리즘 - 정렬  (0) 2015.10.21
Heap sort  (0) 2015.04.19