반응형 Computer Languages/C | C++13 C/C++ 로 Heap Sort (isnert & remove) 구현하기 0. 주저리 아래 소스코드는 대학생 시절때 자료구조 과제로 진행하였던 소스코드이구요. 그 당시의 코드를 그대로 올려서 공유드립니다. Heap Sort가 궁금하시다면 Wikipedia 페이지를 공유드리니 참고해주세요. 1. Heap Sort #include #include using namespace std; void out(int *a) { printf("%d\n", a[0]); for(int i = 0; i < 10;i++){ for(int j = 0; j < 10; j++){ if((2*j+1) == i){ printf("%d, %d\n", a[i], i); /*왼쪽 출력*/ } else if((2*j+2) == i){ printf("%d, %d\n\n", a[i], i); /*오른쪽 출력*/ } }.. 2022. 8. 3. [Linux Programming] setjmp() / longjmp() setjmp()와 longjmp()는 C언어의 goto문과 유사하지만 다소 차이가 있습니다. goto문 같은 경우는 실행중의 EIP(또는 Program Count)만 변경되지만, setjmp()/longjmp()의 특징은 아래와 같습니다. int setjmp( jmp_buf env ) 함수가 호출되는 순간 스택값들은 env에 저장됩니다. setjmp()호출, longjmp할 곳을 지정합니다. void longjmp( jmp_buf env, int val ) longjmp를 호출하면 setjmp()를 한 곳으로 돌아갑니다. #include #include #include #include void p1(); void intHandler(); jmp_buf env; int main() { signal( SIG.. 2015. 12. 3. Winpcap Developer 초기 설정 출처 : http://growingdever.tistory.com/164 2015. 7. 16. [인공지능] A* 알고리즘을 이용한 8-puzzle 만들기 초보자를 위한 A* 알고리즘 (기초개념 설명 및 소스) 참고 - http://egloos.zum.com/cozycoz/v/9748811 8-puzzle에서의 F, G, H값과 열린노드, 닫힌노드 간략한 설명 1) F = G + H, 열린 노드중에서 F값이 최소인 경우를 선택하여 이동한다. 2) G = 현재까지 이동한 횟수 - H = 목표 노드와 현재노드를 비교하여 맞지 않는 노드의 개수 - 열린 노드 : 현재 빈 공간에서 상, 하, 좌, 우 중 갈 수있는 방향을 설정(이때 부모 노드의 위치도 함께저장한다.) - 닫힌 노드 : 이동하기 전의 현재 위치를 저장( 이동한 이후에 월래자리로 돌아가지 않게하기 위함이다.) 8 puzzle 결과 8 puzzle 소스코드 /************************.. 2015. 4. 4. 이전 1 2 3 4 다음