본문 바로가기
반응형

알고리즘5

[최적화] Fast Memory Copy 알고리즘(최적화 추가) 작성자 고임 최초 작성일 2008년10월3일 최종 작성일 2008년 10월 6일 -> 박진홍 님이 원본 글을 알려주셔서 수정 오늘의 주제는 속도 최적화이다. 이 주제는 예전에 활동하던 개발자 모임에서 나왔던 주제인데, 정확히는 모르겠지만 5년 정도 지난 것 같다. 그때 어떤 개발자 분이 이 기법에 대해 소개를 해주셨는데, 불행히도 성함을 잊어버렸다. 이 기법은 외국의 어떤 사람이 창안한 것인데, 역시 그 외국 개발자도 이름을 잊어버렸다. -_-; 누가 먼저 창안을 하고, 누가 먼저 소개했는지 기억은 안나지만, 말도 많고, 탈도 많을 이 주제에 대해서 달려가 보도록 하자. 수정 http://en.wikipedia.org/wiki/Duff%27s_device 박진홍님께서 해당 기법의 정식 명칭과 해당 사이트.. 2009. 1. 29.
[알고리즘] BubbleSort 간단하게 Bubble Sort을 만들어 보았습니다. 정렬 방식은 Buffer 마지막에 가장 큰 값을 옮겨두고, 첫 번째 for loop의 index를 -- 하여 뒤에서 부터 큰 값들이 정렬되도록 하는 sorting 방법입니다. 알고리즘 효율은 O(N^2) 입니다. Function 이름은 "한눈에 보이는 C 알고리즘"이라는 책에서 가져다 사용 했습니다. - 귀차니즘 프로그래밍의 왕도는 역시 불여일타!!!! #include #include using namespace std; #define MAX_SIZE 100 int NumberExit( int *_arrayBuffer, int _number, int _index) { for( int i=1 ; i < _index; i++ ) { if( _arrayBuf.. 2008. 11. 11.
[알고리즘] Selection Sort 프로그래밍 불여일타!!의 프로젝트의 일환으로, 퇴근후 배깔고 하는 알고리즘 공부를 시작!! 그 결과물로 간단 간단한 알고리즘을 작성하고, Blog에 올리기로 했습니다. 오늘은 간단하게 Selection Sort를 만들어 보았습니다. * 원리는 : 총 1...n개의 정렬 되지 않은 요소에서, 첫번째 놈을 가져다가 가장 작은 값을 가진다라 가정 하고 나머지 n-1개와 비교를 하게 합니다. 그래서 그중 가장 작은 녀석을 기억 하고 있다가, 1번째 자리와 바꿉니다. 그리고 index을 하나 더 증가 해서 두번째 요소를 가지고 n-2 만큼 loop를 돌아서 다시 최소값을 찾고 바꿔 줍니다. 이렇게 반복하면 정렬이 됩니다.( 사실 그림으로 보면 아무것도 아닙니다. 그림은 귀찮아서 안그렸습니다.) * 성능 : O(N.. 2008. 11. 11.
[알고리즘] Priority Queue (우선 순위큐) Project에 적용하기 위해서 작성한 Heap을 기반으로한 Priority Queue Class 입니다. MultiThread-Safe 하긴한데 performance가 따라 줄지는 모르겟습니다. 성능 개선을 위한 부분 있다면 언제든지 코멘트 부탁 드립니다 ㅜㅜ;;;; 딱 보면 아시겠지만, 생각하는 프로그래머에 Code를 그대로 옮겨 놓은 듯 합니다. ^0^ 그럼 고운하루 되세요. template class CPriQueue { private: int m_nCurIndex, m_nMaxsize; CRITICAL_SECTION m_cs; T *m_pTemplateArray; void swap( int i, int j ) { T t = m_pTemplateArray[i]; m_pTempl.. 2008. 11. 11.
반응형