컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘

 1  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-1
 2  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-2
 3  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-3
 4  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-4
 5  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-5
 6  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-6
 7  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-7
 8  컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘-8
※ 미리보기 이미지는 최대 20페이지까지만 지원합니다.
  • 분야
  • 등록일
  • 페이지/형식
  • 구매가격
  • 적립금
다운로드  네이버 로그인
소개글
컴퓨터공학과에서 알고리즘의 중요성 전문 프로그래머로 가는 길 알고리즘에 대한 자료입니다.
본문내용
알고리즘이란 어떤 문제를 풀기 위한 일련 과정의 모임을 말한다. 수학용어로서의 알고리즘은 잘 정의되고 명백한 규칙들의 명백한 규칙들의 집합을 의미하고, 컴퓨터용어로서의 알고리즘은 어떤 문제의 해결을 위해 컴퓨터가 사용 가능한 정확한 방법을 말한다. 알고리즘과 프로그래밍은 연관성이 상당히 많다. 프로그램 자체가 알고리즘의 모임이라고 해도 과언이 아니다. 알고리즘의 조건이 프로그램의 조건이기도 하다. 알고리즘의 조건으로는 입력, 출력, 명확성, 유한성, 효과성이 있다. 프로그램에서는 무조건 출력이 있어야 하는 것은 아니지만 입력이 있어야 하고, 프로그램을 구동하면서 오류가 없어야 하고(명확성), 시작한 프로그램은 꼭 끝이 나야하고(유한성), 프로그램을 구동함으로써 그 효과를 얻어야한다(효과성).
이와 같이 알고리즘과 컴퓨터와의 관계가 깊다. “알고리즘의 설계와 분석”은 전산학(Computer Science)의 핵심을 이루고 있으며, 전산학 모든 분야를 이해하는 기초가 되는 아주 중요한 분야라고 할 수 있다. Richard Neapolitan, Kumarss Naimipor, 「Foundations of Algorithms Using Java Pseudocode」, 『알고리즘』, 도경구 역(경기 파주 : 사이텍 미디어, 2004), 역자 머리말.
이러한 학문이 학생들이 어렵고 복잡하고, 직접적으로 필요성이 느껴지지 않는다는 이유로 기피하고 싶은 과목이 되어 버렸다. 이처럼 중요한 알고리즘이 왜 컴퓨터공학과에 필요하고, 프로그래밍을 하면서 중요한지 알고리즘이 정확히 어떻게 중요한지에 관하여 알 필요성이 있다.
2) 연구의 필요성
컴퓨터공학 분야는 현대 정보문화의 핵을 이루고 있는 시스템의 분석 및 설계부터 시스템 운영을 위한 소프트웨어 및 멀티미디어 기반 엔터테인먼트와 초고속 통신망 구성에 이르기까지 컴퓨터 전반에 대해 연구하는 학문이다. “대학알리미 백과사전”, 대학알리미 홈페이지, 2008, .
IT강국인 우리 대한민국에서 고등교육인 대학교의 컴퓨터공학과는 제외시키려고 해도 제외시킬 수 없는 전공과목이 되었다. 또한 아이폰을 필두로 하는 스마트폰이 최근에 두각 됨에 따라서 어플리케이션 시장이 크게 늘었는데, 그에 관련된 것이 Java고 그것을 배울 수 있는 컴퓨터공학에 대해 크게 관심이 늘었다. 산업대학교인 한경대학교는 시대에 흐름에 맞춰서 컴퓨터공학과를 지원하지 않을 수 없을 것이다. 그만큼 지금의 컴퓨터공학은 중요하다고 할 수 있다. 이에 따라 더욱 효율적인 프로그래밍, 더욱 정확한 프로그래밍을 하기 위해서는 알고리즘에 대한 이해가 중요하다고 할 수 있다.
Ⅱ. 본 론
1) 프로그래밍에 필요한 알고리즘의 정확한 중요성 인식
사실 학생들이 프로그래밍을 할 때 보면 머리에 생각만 정리해두고 바로 프로그래밍을 하는 경우가 있다. 그 방법의 접근 방식은 프로그래밍을 할 때 전혀 옳은 방법이 아니다. 프로그램에서 가장 중요하면서도 골치 아픈 것이 오류 없이 프로그래밍을 하는 것 이다. 하지만 생각을 바로 프로그래밍을 하다보면 생각지도 않은 오류를 범할 수가 있다. 왜냐하면 그러한 방법은 자신의 방법이 옳다고 믿어버리고 결과는 이미 출력되어 있다고 생각하고 프로그래밍을 하기 때문이다. 이러한 오류에서 벗어날 수 있는 방법이 알고리즘을 짜는 방법이다. 알고리즘을 만들어서 알고리즘이 제대로 출력이 되는가에 대한 결과가 나오면 그것은 프로그램에서도 돌아 갈 수 있는 것이다. 그리고 프로그램을 설계할시 중요한 얼마나 이 프로그램이 빠르고 효율적이냐의 관한 문제를 해결하기 위해선 알고리즘의 이해가 필요하다. 프로그램을 알고리즘으로 표현하여 시간복잡도를 구하면 이 프로그램이 얼마나 효율적인가에 대한 물음이 해결되기 때문이다. 메모리 효율적인 부분은 알고리즘 선행 학습인 자료구조에서 다룬다. 초보적인 프로그래머는 ‘무엇을’에 중점을 두지만, 초보 프로그래머가 아닌 프로그래머는 ‘어떻게’에 중점을 두어 어떻게 하면 좀 더 효율적이고, 완성도 높은 프로그램을 만드는데 중점을 둔다. 이지영, 『자바로 배우는 쉬운 자료구조』(서울 : 한빛미디어,2008), 머리말.
참고문헌
참고문헌

- 김상형, 『안드로이드 프로그래밍 정복』, 서울 : 한빛미디어, 2010.
- 이지영, 『자바로 배우는 쉬운 자료구조』, 서울 : 한빛미디어, 2008.

- Neapolitan, Richard and Naimipor, Kumarss,
「Foundations of Algorithms Using Java Pseudocode」, 『알고리즘』, 도경구 역,
경기 파주 : 사이텍 미디어, 2004.

- “대학알리미 백과사전”, 대학알리미 홈페이지, 2008. ,
.
- “숭실대학교 컴퓨터학부 - 교과목 트리”, 숭실대학교 컴퓨터공학부 홈페이지, 2008.
.
- “컴퓨터공학과 교육과정”, 서울대학교 컴퓨터공학과 홈페이지, 2008.
.
- “컴퓨터공학과 교육과정”, 한경대학교 홈페이지, 2010. 11. 22. .
- “퀵 정렬 예제”, 위키백과 홈페이지, 2010. 10. 18. ,
.
- “한양대학교 교육과정”, 한양대학교 홈페이지, 2010. 3. 26. ,
.
- "MIT EECS Curriculum", MIT 홈페이지, 2010. ,
.