2022/07/31 4

[5일차] 백준 class1_1000,1001,1008

백준 문제를 클래스 별로 정리한 사이트를 알게되었다. 그래서 프로그래밍 언어인 자바를 금방 이해하기 위해서는 실전으로 연습하고 문법은 수업시간에 잘 듣는 걸로 플랜을 정했다. - JAVA import java.util.Scanner; public class Main { // 더하기 public static void main(String[] args) { Scanner sc = new Scanner(System.in); System.out.println("A의 값을 입력해주세요"); int A = sc.nextInt(); System.out.println("B의 값을 입력해주세요"); int B = sc.nextInt(); System.out.println(A+B); } } 1001은 뺄셈이다. - JAV..

[Algorithm] 퀵 정렬 (Quick Sort)2_JAVA

계속 해서 퀵정렬을 살펴보자. 우선 앞에서 배운 내용을 바탕으로 퀵정렬을 구현해보면 아래와 같다. [퀵정렬 구현] - JAVA import java.util.*; public class QuickSort{ private static void quickSort(int[] arr) { //quickSort 함수 선언 quickSort(arr,0,arr.length-1); //정렬을 할 배열을 받아서 시작 위치와 끝나는 위치를 정하기 } //start, end, 파티션을 나눌 범위를 설정해 인자로 받음 private static void quickSort(int[] arr, int start, int end) { //재귀함수를 본격적으로 호출 int part2 = partition(arr,start,end);..

[JAVA] 설치 및 초기 작업

오늘은 자바를 배우는 첫번째 시간이다. 자바를 이용하기 위해서는 JDK를 설치해야한다. 또 간편하게 사용하기 위해서 Eclipse도 추가로 설치했다. 내가 받은 링크는 아래와 같다. 원하는 버전을 구글에 검색하면 쉽게 찾을 수 있다. [링크 주소] - JDK 11 : https://www.oracle.com/kr/java/technologies/javase/jdk11-archive-downloads.html * 자바는 오라클 회원가입이 추가로 필요하다. - Eclipse : https://www.eclipse.org/downloads/packages/release/2020-09 Eclipse 2020-09 | Eclipse Packages www.eclipse.org 참고로 순서는 꼭 자바 먼저해야 설치..

공부기록/자바 2022.07.31

[Algorithm] 퀵 정렬 (Quick Sort)1_JAVA

일반적으로 가장 많이 사용 되는 퀵정렬(Quick Sort)에 대해 공부해 보자. 퀵정렬은 이름처럼 졍렬 속도가 매우 빠른 것에서 착안하여 알고리즘 개발자 찰스 앤터니 리터드 호어(C. A. R. Hoare)가 착안해 직접이름을 붙였다. [개요] [배열을 두그룹으로 나누기] 그룹을 나누기 위해서는 피벗 이하의 요소를 배열 왼쪽으로, 피벗 이하의 요소들을 오른 쪽으로 옮겨야 한다. - a[pl] >= x 가 성렵하는 요소를 찾을 때까지 pl을 오른쪽으로 스캔함 - a[pl] pr +1 이면 다음과 같은 그룹이 생기게 된다. - 피벗과 같은 값을 갖는 그룹 : a[pr +1], ··· , a[pl-1] 만일 피벗과 같은 값을 갖는 그룹이 만들어 진다면, 이때도 전과 마찬가지로 동일한 요소를 교환하면 된다(어..