[Visual C++ 2017] 정렬을 시각화해 보았다 #1
3137 단어 VisualC++VisualStudio2017
소개
정렬 처리를 어쩐지 사용하고 있었기 때문에, 시각적으로 취급하고 싶었다.
버블 소트나 퀵 소트는 알고 있었지만, 다른 소트 알고리즘에는 희소하고, 자기 학습도 되어 좋은 기회라고 생각했다.
소트 알고리즘은, 참고가 되는 페이지가 Web상에는 많기 때문에, 이 투고에서는 할애.
Winsow 만들기
Windows 데스크탑 어플리케이션으로 신규 Window를 작성할 수 있다.


그리기
hPen MoveToEx() LineTo() 로 프레임 워크를 그립니다.hButtonWnd[] 로 버튼을 설치하여 초기화나 정렬 처리의 시작 등을 컨트롤 시킨다.

매우 소박한 인터페이스입니다만, 우선은 이것으로.
시각화
계산할 때마다 화면 업데이트가 필요하기 때문에 정렬 알고리즘 중에 InvalidateRect() UpdateWindow()를 넣었다.
sample.cppif (input_num[j - 1] > input_num[j]) {
temp = input_num[j];
input_num[j] = input_num[j - 1];
input_num[j - 1] = temp;
InvalidateRect(hWd, NULL, TRUE);
UpdateWindow(hWd);
}
데이터 개수를 100개 준비하여 난수를 생성. 버블 정렬을 시도해보십시오.

목표를 달성할 수 있었던 것 같습니다.
다른 정렬도 충실하게 하고 싶습니다.
링크
아래 링크처에서는 많은 소트를 볼 수 있어 그 영향을 받았습니다.
15 Sorting Algorithms in 6 Minutes
htps //w w. 요츠베. 이 m/와 tch? v = kP 등 0W1 케 Cg
Reference
이 문제에 관하여([Visual C++ 2017] 정렬을 시각화해 보았다 #1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/name_yy/items/c8cfb2ee68ca5be6be69
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Windows 데스크탑 어플리케이션으로 신규 Window를 작성할 수 있다.


그리기
hPen MoveToEx() LineTo() 로 프레임 워크를 그립니다.hButtonWnd[] 로 버튼을 설치하여 초기화나 정렬 처리의 시작 등을 컨트롤 시킨다.

매우 소박한 인터페이스입니다만, 우선은 이것으로.
시각화
계산할 때마다 화면 업데이트가 필요하기 때문에 정렬 알고리즘 중에 InvalidateRect() UpdateWindow()를 넣었다.
sample.cppif (input_num[j - 1] > input_num[j]) {
temp = input_num[j];
input_num[j] = input_num[j - 1];
input_num[j - 1] = temp;
InvalidateRect(hWd, NULL, TRUE);
UpdateWindow(hWd);
}
데이터 개수를 100개 준비하여 난수를 생성. 버블 정렬을 시도해보십시오.

목표를 달성할 수 있었던 것 같습니다.
다른 정렬도 충실하게 하고 싶습니다.
링크
아래 링크처에서는 많은 소트를 볼 수 있어 그 영향을 받았습니다.
15 Sorting Algorithms in 6 Minutes
htps //w w. 요츠베. 이 m/와 tch? v = kP 등 0W1 케 Cg
Reference
이 문제에 관하여([Visual C++ 2017] 정렬을 시각화해 보았다 #1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/name_yy/items/c8cfb2ee68ca5be6be69
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
계산할 때마다 화면 업데이트가 필요하기 때문에 정렬 알고리즘 중에
InvalidateRect() UpdateWindow()를 넣었다.sample.cpp
if (input_num[j - 1] > input_num[j]) {
temp = input_num[j];
input_num[j] = input_num[j - 1];
input_num[j - 1] = temp;
InvalidateRect(hWd, NULL, TRUE);
UpdateWindow(hWd);
}
데이터 개수를 100개 준비하여 난수를 생성. 버블 정렬을 시도해보십시오.

목표를 달성할 수 있었던 것 같습니다.
다른 정렬도 충실하게 하고 싶습니다.
링크
아래 링크처에서는 많은 소트를 볼 수 있어 그 영향을 받았습니다.
15 Sorting Algorithms in 6 Minutes
htps //w w. 요츠베. 이 m/와 tch? v = kP 등 0W1 케 Cg
Reference
이 문제에 관하여([Visual C++ 2017] 정렬을 시각화해 보았다 #1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다
https://qiita.com/name_yy/items/c8cfb2ee68ca5be6be69
텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)
Reference
이 문제에 관하여([Visual C++ 2017] 정렬을 시각화해 보았다 #1), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://qiita.com/name_yy/items/c8cfb2ee68ca5be6be69텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념
(Collection and Share based on the CC Protocol.)