목록JAVA/JAVA_디버깅표 (5)
JAVA를 잡아라!...

▶ 선택정렬이란? : 데이터 하나를 기준으로 다른 데이터와 비교해 가장 작거나/큰 데이터와 자리를 바꾸는 식으로 반복비교하는 정렬 - 구현이 간단하고, 작은 크기의 배열을 정렬하기 좋음 - 중복된 값은 원본 순서를 보장하지 않음 - 배열이 크면 성능이 저하됨 코드 package class01; public class Test01 { public static void main(String[] args) { int[] arr = new int[5]; arr[0] = 5; arr[1] = 3; arr[2] = 1; arr[3] = 4; arr[4] = 2; for(int a = 0; a < arr.length-1; a++) { int minIndex = a; for(int i = a ..

▶ 삽입정렬이란? : 비교하고자 하는 target(타겟)과 그 이전의 원소들과 비교하며 자리를 교환(swap)하는 정렬 방법 - 대충 어느정도 정렬되어 있으면 속도가 빠름 - 안정정렬 : 같은 값이 있을 때 둘의 위치가 바뀌지 않음 - 알고리즘 단순, 간단한 구현, 직관적인 소스코드 - 정렬이 배열안에서 교환되어 다른 메모리 공간을 필요로하지 않음 - 데이터 크기가 크거나 복잡해지면 성능의 편차가 큼 - ex) 실무에서 99% 정리되어있을 때 살짝 가다듬을 때 사용 코드 package class02; public class practice { public static void main(String[] args) { int[] arr = new int[5]; arr[0] = 100..

▶ 버블정렬이란? : 배열내의 두개의 인접한 Index를 비교해 더 큰 숫자를 뒤로보내 차곡차곡 쌓아 정렬하는 방 - 배열의 알고리즘 중 하나! - 배우기 쉽지만 느림(성능이 안좋음) - 버블정렬은 1회 수행시 가장 큰 값이 맨 뒤로 이동하는 로직! - 큰 값들을 빠르게 찾아야할 때 --> 당장 빨리 큰 값을 찾아야할 때 활용 - 쉽기 때문에 정렬할 데이터가 소수일 때 유리 - 코드가 단순하며 추가 메모리가 필요하지 않음 ver1. 코드 package freefree; public class Task02 { public static void main(String[] args) { //int[] ar = {3,2,5,1,4}; int[] ar = new int[5]; ar[0] = 3; ar[1] = 2;..
문제 5개의 서로다른 정수 데이터를 저장한 배열이 존재한다. 가장 큰 값을 가진 index의 위치와 값을 출력하세요. int[] datas = new int[5];// 5개의 정수 저장 datas[0] = 1; datas[1] = 2; datas[2] = 5; datas[3] = 3; datas[4] = 4; int maxIndex = 0;// maxIndex : max가 저장된 index위치 for(int i = 1; i datas[maxIndex]) {// 처음에 예상한 max보다 크면 maxIndex = i;// 그때의 위치는 i야 } } System.out.println("최대값은 " + datas[maxIndex] + "이고,")..
#1 * ** *** **** ***** a a < 5 i i