본문 바로가기

프로그래밍305

그래프의 용어 그래프의 정의그래프의 용어그래프의 종류그래프의 표현방법 2009. 5. 26.
수많은 예문 // [2002년 6월 20일]/*데이타 베이스로의 막연한 여행 (부제 : 무조건 따라가기)*/ sp_databases/*데이타 베이스 옮기기*/ use 축구/*테이블 목록 조회*/ select * from sysobjects where type='u'/*테이블의 컬럼 정보 조회*/ sp_columns 경기별점수/*테이블 조회*/ select * from 선수/*Pubs DB의 저자 테이블의 컬럼정의와 내용을 조회해주십시오*/ use pubsselect * from sysobjects where type='u'sp_columns authorsselect * from authors/*Pubs DB의 구조를 오직 상단의 질의어만으로 이해해보자*/ use pubsselect * from sysobjects w.. 2009. 5. 13.
<img src="http://blogimgs.naver.com/nblog/ico_scrap01.gif" class="i_scrap" width="50" height="15" alt="본문스크랩" /> 파서트리 파서 트리 파싱을 목적으로 하는 트리파싱 원본을 목적에 맞게 변환하는 작업 A포맷으로 되어 있는 원본을 B포맷으로 변환하는 작업 예) 수식 파서 트리(피 연산자는 음이 아닌 정수, 연산자는 사칙연산에 한한다고 하자.) 먼저 중위 표기에 해당하는 정규식을 만들어보자.Numeric Expression!: 0mid -expression!: operator: |||operand: *number_char:||...| 위 첨자가 작성이 안되어서 다음과 같이 약속한다.참고 * : a가 1번 이상 반복된다. 0 : a가 0번 이상 반복된다. 수식 파서 트리를 만들기 위해서1. 원본을 입력받는다.2. 토큰을 생성한다.(Lexical) :잘못된 토큰이 있으면 멈춤다. ==> 원본에 모든 요소가 operand 혹은 oper.. 2009. 5. 12.
<img src="http://blogimgs.naver.com/nblog/ico_scrap01.gif" class="i_scrap" width="50" height="15" alt="본문스크랩" /> 퀵소트 퀵 소트 알고리즘 간략한 퀵소트 알고리즘 pivot을 선택하여 pivot보다 작은 것을 오른쪽으로 큰 것을 왼쪽으로 보낸뒤 pivot의 자신의 자리로 들어간 뒤에 앞쪽 배열과 뒤쪽 배열을 재귀적으로 퀵소트를 호출하는 방법을 사용한다. 퀵 소트 알고리즘의 pseudo-code(의사코드)의 예 1. pivot을 선택한다. (다양한 방법이 있고 이에 따라 성능이 많은 차이를 지니게 된다.)2. pivot을 배열의 맨 앞(혹은 맨 끝)의 요소와 교체한다.3. i = 1로 설정,j=asize-1 로 설정4. Loop i가 j보다 작을 동안 4.1 Loop pivot(배열의 맨 앞의 요소) >= 배열의 i번째 요소 4.1.1 i를 증가 4.2 Loop pivot(배열의 맨 앞의 요소) 2009. 5. 12.
<img src="http://blogimgs.naver.com/nblog/ico_scrap01.gif" class="i_scrap" width="50" height="15" alt="본문스크랩" /> 선택정렬 선택정렬 해결할문제–n개의요소로구성된배열A를정렬하자§초기:A–Loop A의카운터i에0을대입§Loop A( i § temp에i를대입§ 초기:B- Loop_B의카운터j에i+1를대입§ Loop B (j§ if(A[temp]>A[j])§ temp assign j§ j assign j+1§ swap A[i],A[temp] § i assign i+1 수행 속도n개의 자료 중 최소값 찾기 - 루프 B 수행 속도 T'(n) T'(n) = n-1 번 비교선택 정렬 - 전체 수행 속도: T(n) T(n) = T'(n)+T'(n-1)+T'(n-2)+...+T'(1) = (n-1) + (n-2) + ( n-3) + ... + 0 = 1/2N*N + 1/2==> O(N*N) 예:Array: 27 8 12 15 23 9 6 25.. 2009. 5. 12.
<img src="http://blogimgs.naver.com/nblog/ico_scrap01.gif" class="i_scrap" width="50" height="15" alt="본문스크랩" /> 삽입정렬 삽입정렬해결할문제–n개의요소로구성된배열A를정렬하자§초기_A–Loop A의카운터i에1을대입§Loop _A( i § temp에A[i]를대입§ 초기B- Loop_B의카운터j에i를대입§ Loop_B (A[j-1] >temp and j> 0) //Loop invariant: temp’sposition is at A[0]-A[j]§ swap A[j],A[j-1]§ j assign j-1§ A[j] assign temp i assign i+1 수행속도i번째 요소를 자기 위치에 보내기 - LoopB의 수행속도 :T'(n)T('n) 은 최악의 경우 n-1번 비교한다.삽입 정렬 - T(n)T(n) = T'(1) + T'(2) + ... + T'(n) = 0 + 1 + ... + (n-1)즉 O(N*N)이다. 하지만 배열에.. 2009. 5. 12.
<img src="http://blogimgs.naver.com/nblog/ico_scrap02.gif" class="i_scrap" width="50" height="15" alt="링크스크랩" /> 알고리즘 :: 정렬 - 퀵정렬. 2009. 5. 12.
<img src="http://blogimgs.naver.com/nblog/ico_scrap02.gif" class="i_scrap" width="50" height="15" alt="링크스크랩" /> 알고리즘 :: 정렬 - 쉘정렬. 2009. 5. 12.
<img src="http://blogimgs.naver.com/nblog/ico_scrap02.gif" class="i_scrap" width="50" height="15" alt="링크스크랩" /> 알고리즘 :: 정렬 - 삽입정렬. 2009. 5. 12.