반응형 Programing/Algorithm9 자바 선택정렬 알고리즘, Java Selection Sort Algorithm 자바 선택정렬 알고리즘, Java Selection Sort Algorithm 선택정렬이란, 데이터의 갯수-1 만큼 반복하면서 가장 작은 값을 찾아 현재 반복되는 인덱스의 값과 변경하는 정렬입니다. 1. 데이터 내 가장 작은 값을 찾는다. 2. 현재 반복되는 인덱스의 값과 가장 작은 값을 변경한다. 3. 1~2의 작업을 반복한다. 장점 데이터양이 적을 때 효율이 좋다. 단점 데이터양이 많은 때 효율이 떨어진다. 즉, 적은 데이터를 정렬할 때 사용하시면 됩니다. 테스트 코드를 보도록 하죠. import java.util.Arrays; public class SelectionSortTest { public static void sort(int array[]) { for(int i=0; i Programing/Algorithm 2020. 1. 7. Java Javascript 프로그래머스 Level1 두 정수 사이의 합 Java Javascript 프로그래머스 Level1 두 정수 사이의 합 순서에 상관없는 두 정수 사이의 값을 구하면 되는 문제입니다. Math.max() 와 Math.min() 함수를 활용해서 작은 값부터 큰값까지 반복해서 더하면 됩니다. java 풀이 1 2 3 4 5 6 7 8 9 class Solution { public long solution(int a, int b) { long answer = 0; for (int i=Math.min(a,b); i Programing/Algorithm 2018. 7. 4. Java 프로그래머스 Level1 가운데 글자 가져오기 Java 프로그래머스 Level1 가운데 글자 가져오기 substring 메소드를 활용하여 문자열을 잘라서 리턴 하면 되는 문제입니다. 코드를 보도록 하죠. 1 2 3 4 5 6 7 8 9 10 11 12 class StringExercise{ String getMiddle(String word){ if("".equals(word)) return ""; int len = word.length(); return (len%2==0)?word.substring(len/2-1, len/2+1):word.substring(len/2, len/2+1); } // 아래는 테스트로 출력해 보기 위한 코드입니다. public static void main(String[] args){ StringExercise se = .. Programing/Algorithm 2018. 5. 16. Java, Javascript 프로그래머스 Level1 수박수박수박수박수박수? Java, Javascript 프로그래머스 Level1 수박수박수박수박수박수? 정수 n 만큼 반복하면서 "수", "박" 을 붙여 리턴하는 문제입니다. 자바 코드를 먼저 보시죠. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 public class WaterMelon { public String watermelon(int n){ StringBuffer sb = new StringBuffer(); for(int i=0; i Programing/Algorithm 2018. 5. 16. Java, Javascript 프로그래머스 Level1 짝수와 홀수 Java, Javascript 프로그래머스 Level1 짝수와 홀수 2로 나눈 나머지가 0이 되는 값이 짝수라는 것만 알면 쉽게 풀 수 있습니다. 코드를 보도록 하죠. 1 2 3 4 5 6 7 8 9 10 11 12 13 public class EvenOrOdd { String evenOrOdd(int num) { return (num%2==0)?"Even":"Odd"; } public static void main(String[] args) { String str = "1 2 3 4"; EvenOrOdd evenOrOdd = new EvenOrOdd(); //아래는 테스트로 출력해 보기 위한 코드입니다. System.out.println("결과 : " + evenOrOdd.evenOrOdd(3)); S.. Programing/Algorithm 2018. 5. 16. Java 프로그래머스 Level1 나누어 떨어지는 숫자 배열 Java 프로그래머스 Level1 나누어 떨어지는 숫자 배열 나머지 연산자를 사용하여 나누어 떨어지는 경우의 값만을 새로운 배열에 담아 리턴하면 되는 문제 입니다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 import java.util.*; class Divisible { public int[] divisible(int[] array, int divisor) { //ret에 array에 포함된 정수중, divisor로 나누어 떨어지는 숫자를 순서대로 넣으세요. List list = new ArrayList(); for(int i=0; i Programing/Algorithm 2018. 5. 15. Java, Javascript 프로그래머스 Level1 행렬의 덧셈 Java, Javascript 프로그래머스 Level1 행렬의 덧셈 다중배열에 대한 이해를 물어보는 문제입니다. 제가 작성한 자바코드 부터 보시죠. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 class SumMatrix { int[][] sumMatrix(int[][] A, int[][] B) { int[][] answer = new int[A.length][A[0].length]; for(int i=0; i Programing/Algorithm 2018. 5. 14. Java 프로그래머스 Level1 문자열 내림차순으로 배치하기 Java 프로그래머스 Level1 문자열 내림차순으로 배치하기 문자열을 입력받아 내림차순으로 정렬해 리턴하는 문제 입니다. 그럼 제가 푼 코드를 보도록 하죠. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 import java.util.*; public class ReverseStr { public String reverseStr(String str){ String[] charArray = str.split(""); Arrays.sort(charArray); StringBuffer sb = new StringBuffer(); for(int i=0; i toCharArray() 메소드를 사용해서 메모리를 아낄 수 있죠. 그리고 멀티쓰레드에서 사용하는 코드가 아니므로 Str.. Programing/Algorithm 2018. 5. 14. Java, Javascript 프로그래머스 Level1 서울에서 김서방 찾기 Java, Javascript 프로그래머스 Level1 서울에서 김서방 찾기 읽어보시면 아시겠지만, 문제는 간단합니다. String배열에서 Kim 문자열이 있는 인덱스를 리턴하면 됩니다. 자바 코드부터 보도록 하죠. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 public class FindKim { public String findKim(String[] seoul){ //x에 김서방의 위치를 저장하세요. int x = 0; for(int i=0; i Programing/Algorithm 2018. 5. 14. 이전 1 다음 💲 추천 글 반응형