U E D R , A S I H C RSS

새싹�실/2012/열반/120507

1. ìœì„� ë°� ì§„í–‰

  • 김민규
  • 채유빈
  • 과제 설명 ë°� ë°°ì—´ì—� 대한 ê°œë…� 학습

2. 수업 내용

2.1. 과제 설명

  • 과제 설명ì�€ ìƒ�략합니다.

2.2. ë°°ì—´

2.2.1. 왜 배열� 필요한가

  • ìž�료를 처리할 때, ë§Žì�€ 변수를 ê°�ê°� 선언하거나 코드를 나열하는 것보다 ë°°ì—´ì�„ ì“°ë©´ 편리합니다.

2.2.2. C언어�서� 배열

int main()
{
	int A[10]; // 정수형 ��터 10개

	printf("%d", A[0]); // ë°°ì—´ì�˜ 첫 번째 ì›�소 ìœë ¥
}

  • An으로 선언할 경우 첨ìž�는 0 부터 n-1 까지 쓸 수 있습니다.

2.2.3. �료구조

  • ë°°ì—´ì�€ 기초ì �ì�¸ ìž�료구조 중 하나입니다.
  • ë°°ì—´ì�˜ 특징ì�€ ì—°ì†�ì �ì�¸ 메모리 공간ì�„ 가진다는 ì �입니다.
    • ì›�하는 ì›�소ì—� 즉시 접근할 수 있습니다.
    • ì›�소를 삭제하거나 삽입하는 ì�¼ì�€ 어렵습니다.
  • 다른 ìž�료구조(리스트, 트리)ì—� 비해 다루기 쉽습니다.

2.3. ì •ë ¬

2.3.1. 왜 정렬� 필요한가

  • ì–´ë–¤ ë�„서관ì�˜ 서가ì—� ì±…ì�´ ì •ë ¬ë�˜ì–´ 있지 않다고 가정해봅시다. ê·¸ ìƒ�황ì—�서는 ì–´ë–¤ 특정한 ì±…ì�„ 찾기는 매우 힘듭니다. 우리가 ë�„서관ì—�서 ì±…ì�„ 쉽게 ì°¾ì�„ 수 있는 ì�´ìœ ëŠ” 책들ì�´ ì •ë ¬ ë�˜ì–´ 있기 때문입니다. 단, 저런 편리함ì�„ 위해서는 ì–´ëŠ� ì •ë�„ì�˜ 비용ì�´ ë°œìƒ�합니다. 기존ì�˜ ë�°ì�´í„°ë¥¼ 정렬할 때 드는 비용ì�´ 있고, 새로운 ë�°ì�´í„°ê°€ 삽입하려 í•  때 ì •ë ¬ì�„ 유지하기 위해 드는 비용ì�´ ë°œìƒ�합니다. 예를 들어 ë�„서관ì�˜ 서가ì—� ì±…ì�´ ì •ë ¬ë�˜ì–´ 있으면 새로운 ì±…ì�´ 들어왔ì�„ 때 ì œ ìž�리ì—� 찾아 꽂아야 하지만, ì •ë ¬ë�˜ì–´ 있지 않다면 아무 빈 공간ì—� 꽂으면 ë�©ë‹ˆë‹¤. ì�´ë ‡ë“¯ 비용ì�´ ë°œìƒ�하기 때문ì—�, ì–´ë–¤ ìž�료를 í•­ìƒ� 정렬할 필요는 없습니다. 찾는 ì�¼ë³´ë‹¤ 추가하는 ì�¼ì�´ 훨씬 많다면 정렬하지 않는 것ì�´ ì�´ë“�ì�´ ë�  수ë�„ 있습니다.

3. 숙제

  • ì›�소 ê°„ì�˜ 비êµ�ê°€ 가능한 ë�°ì�´í„° N개가 주어졌ì�„ 때, ê°�ê°�ì�˜ ë�°ì�´í„°ì—� 순위를 부여하는 방법ì—� 대해 ìƒ�ê°�해보세요.
Valid XHTML 1.0! Valid CSS! powered by MoniWiki
last modified 2021-02-07 05:29:47
Processing time 0.0049 sec