-
-
[12] 심화 정렬 ( SORT ) - Quick SortIT&컴퓨터공학/자료구조&알고리즘 2020. 6. 28. 17:25
분할 정복법(divide and conquer) : Merge Sort, Quick Sort 분할 : 해결하고자 하는 문제를 작은 크기의 동일한 문제들로 분할 정복 : 각각의 작은 문제를 순환적으로해결 Merge Sort 는 그냥 배열을 반씩 쪼개는데 반해, Quick Sort 는 Pivot 을 기준으로 사용해서 분할함. 아래의 코드는 Pivot 을 배열의 가운데 수로 정했을 때 퀵소트 예시 import java.util.Scanner; // Quick Sort public class sort_2 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); int[]..
-
[11] 심화 정렬 ( SORT )IT&컴퓨터공학/자료구조&알고리즘 2020. 6. 25. 23:42
분할 정복법(divide and conquer) : Merge Sort, Quick Sort 분할 : 해결하고자 하는 문제를 작은 크기의 동일한 문제들로 분할 정복 : 각각의 작은 문제를 순환적으로해결 Merge Sort Merge ( 합병 ) : 작은 문제의 해를 합해서 원래 문제에 대한 해를 구함 // 합병정렬 public class sort_1 { public static void main(String[] args) { Scanner scanner = new Scanner(System.in); int n = scanner.nextInt(); // 배열 크기 int[] arr = new int[n]; for(int i =0; i
-
[9] 순환함수 ( 재귀함수 ) - JAVA 를 이용한 이미지 블럭의 사이즈 구하기IT&컴퓨터공학/자료구조&알고리즘 2020. 6. 22. 18:26
public class counting { static int alreadyCount =2; // alreadyCount : 이미 count 한 이미지 픽셀 static int size =8; // image 의 크기는 size X size static int cnt =0; // 카운트 수 ( 정답 ) public static void main(String[] args) { int[][] image = { // 0 은 빈칸, 1은 pixel {1,0,0,0,0,0,1,0}, {0,1,1,0,0,0,0,0}, {1,1,0,0,0,1,0,0}, {0,0,0,0,1,0,1,0}, {0,0,0,0,0,1,0,0}, {0,1,0,0,0,1,0,1}, {0,1,0,0,0,1,0,1}, {1,1,1,0,1,0,1,1..
-
[08] 순환함수 ( 재귀함수 ) - JAVA로 미로찾기 문제 구현IT&컴퓨터공학/자료구조&알고리즘 2020. 6. 22. 17:13
public class maze { static int size = 8; // 미로는 size X size 크기 static int visited =2; // visited : 방문한 길 표시 static int cannot =3; // cannot : 막혀있는 길 표시 -> 동서남북 다 보더라도 벽이거나 왔던 길밖에 없어서 새로운 길로 가지 못하는 경우 public static void main(String[] args) { int[][] maze= { // 0은 길, 1은 벽 {0,0,0,0,1,0,0,1}, {0,1,1,0,1,1,0,1}, {0,0,0,1,0,0,0,1}, {0,1,0,0,1,1,0,0}, {0,1,1,1,0,0,1,1}, {0,1,0,0,0,1,0,1}, {0,0,0,1,0,0,..
-
[07] 순환 ( Recursion ) 이란?IT&컴퓨터공학/자료구조&알고리즘 2020. 6. 19. 22:47
Recursion ( 순환 ) 함수 : 자기 자신을 호출하는 함수. 재귀함수라고도 한다. void function(){ ..... function(); // 이런식으로 ! ...... } public static void main(String [] args){ function(); // 결과 : Hello ! 무한 반복 루프 } void function(){ System.out.println("Hello !"); function(); } 재귀함수를 위처럼 아무 조건없이 짜면, 무한루프에 빠진다. 따라서 우리는 재귀함수가 무한 루프에 빠지지 않도록 조건을 지정해줘야함. public static void main(String [] args){ function(4); // 결과 : Hello ! 4번 } vo..
-
[JAVASCRIPT]8. null 과 undefined 의 차이점IT&컴퓨터공학/Javascript 2020. 4. 13. 22:10
undefined : 컴퓨터가 임의로 할당해준 빈 값 var num console.log(num) // undefined : 이것도 일종의 값이다. // 값을 안넣을 수도 있는것임 ! -> 나중에 넣어주면 된다. // 컴퓨터가 기본적으로 정해준값임 . 처음에 아예 할당이 안된 변수 null : 내가 고의적으로 비워준 빈 값 var num = null console.log(num) // null : 이것도 일종의 값이다. // 값을 안넣을 수도 있는것임 ! -> 나중에 넣어주면 된다. // undefined 보다 무조건 null 을 쓰는걸 추천한다. // 컴퓨터가 기억하고있는 값을 지울때 null 을 넣으면 이건 내가 고의적으로 지운것임 참고 var num ='' console.log(num) // " "..