<버블 정렬>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Bubble Sort</title>
</head>
<body>
<script>
var a = [10, 3, 1, 4, 2]; // 시작 위치에서 하나씩 뒤로 반복 비교
for (var i = 0; i < a.length - 1; i++) {
document.write("i = " + i + "<br/>");
// 시작위치를 하나씩 앞으로 반복 비교
for (var j = a.length - 1; j > i; j--) {
document.write("j = " + j + "<br/>");
// 만약 이웃하는 두 값 중 뒤 값이 더 작다면
if (a[j] < a[j - 1]) {
//교환 알고리즘(부등호로 오름차순, 내림차순 결정)
var tmp = a[j];
a[j] = a[j - 1];
a[j - 1] = tmp;
}
}
}
document.write("Bubble sort = " + a);
</script>
</body>
</html>
<선택 정렬>
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<title>Selection Sort 선택 정렬</title>
</head>
<body>
<script>
var a = [10,3,1,4,2];
for (var i = 0; i < a.length-1; i++){
var min = a[i]; //임시 최소값
var k = i; //임시 최소값의 위치 지정
for (var j = i + 1; j < a.length; j++){
if(min > a[j]){
min = a[j]; //최소값 변경
k = j; // 최소값 위치
}
}
//교환 알고리즘(swap)
var tmp = a[i];
a[i] = a[k];
a[k] = tmp;
}
document.write("selection sort" + a);
</script>
</body>
</html>
'국비지원 > 백엔드' 카테고리의 다른 글
230321 python for 문의 range() / node.js 설치 (0) | 2023.03.21 |
---|---|
230317 직렬화 - 이미지 업로드 (0) | 2023.03.17 |
230316 스프링 부트 파일 업로드 - H2, Postman 이용 (0) | 2023.03.16 |
230315 SpringBoot - H2 테이블 생성 실패 (0) | 2023.03.15 |
230313 알고리즘 - 데이터 교환 스와핑 (0) | 2023.03.13 |