๐ 1. ๋ฌธ์ ์ค๋ช

๐ก 2. ํ์ด๊ณผ์
๋ ๊ฐ์ง ๊ฒฝ์ฐ๋ก ๋๋์ด์ ํด๊ฒฐํ๊ธฐ
direction ์ด right์ธ ๊ฒฝ์ฐ์ left์ธ ๊ฒฝ์ฐ๋ก ๊ตฌ๋ถํ๋ค.
- "right" ๋ฐฉํฅ์ผ๋ก ํ์ : ๋ฐฐ์ด์ ๋ง์ง๋ง ์์๋ฅผ ๋งจ ์์ ๋ฃ๊ธฐ + ๋๋จธ์ง ์์๋ค์ ํ ์นธ์ฉ ๋ค๋ก ์ด๋
- "left" ๋ฐฉํฅ์ผ๋ก ํ์ : ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๋งจ ๋ค๋ก ๋ณด๋ด๊ธฐ + ๋๋จธ์ง ์์๋ค์ ํ ์นธ์ฉ ์์ชฝ์ผ๋ก ์ด๋
๐จโ๐ป 3. ์ ๋ต์ฝ๋
๋ด๊ฐ ํผ ์ฝ๋
import java.util.*;
class Solution {
public int[] solution(int[] numbers, String direction) {
int[] answer = new int[numbers.length];
if (direction.equals("right")) {
answer[0] = numbers[numbers.length-1];
for(int i = 0; i < numbers.length-1; i++) {
answer[i+1] = numbers[i];
}
} else {
int tmpl = numbers[0];
answer[numbers.length-1] = numbers[0];
for(int i = 1; i < numbers.length-1; i++) {
answer[i-1] = numbers[i];
}
answer[numbers.length-2] = numbers[numbers.length-1];
}
return answer;
}
}
์ฝ๋ ๋ฆฌ๋ทฐ & ์ฃผ์ ์ถ๊ฐ
import java.util.*;
class Solution {
public int[] solution(int[] numbers, String direction) {
int[] answer = new int[numbers.length];
if (direction.equals("right")) {
// ์ค๋ฅธ์ชฝ์ผ๋ก ํ ์นธ ํ์
answer[0] = numbers[numbers.length - 1]; // ๋ง์ง๋ง ์์๋ฅผ ๋งจ ์์
for (int i = 1; i < numbers.length; i++) {
answer[i] = numbers[i - 1]; // ๋๋จธ์ง ์์๋ฅผ ํ ์นธ์ฉ ๋ค๋ก
}
} else if (direction.equals("left")) {
// ์ผ์ชฝ์ผ๋ก ํ ์นธ ํ์
answer[numbers.length - 1] = numbers[0]; // ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๋งจ ๋ค์
for (int i = 0; i < numbers.length - 1; i++) {
answer[i] = numbers[i + 1]; // ๋๋จธ์ง ์์๋ฅผ ํ ์นธ์ฉ ์์ผ๋ก
}
}
return answer;
}
}
'Algorithm > JAVAํ ์คํธ' ์นดํ ๊ณ ๋ฆฌ์ ๋ค๋ฅธ ๊ธ
๐ 1. ๋ฌธ์ ์ค๋ช

๐ก 2. ํ์ด๊ณผ์
๋ ๊ฐ์ง ๊ฒฝ์ฐ๋ก ๋๋์ด์ ํด๊ฒฐํ๊ธฐ
direction ์ด right์ธ ๊ฒฝ์ฐ์ left์ธ ๊ฒฝ์ฐ๋ก ๊ตฌ๋ถํ๋ค.
- "right" ๋ฐฉํฅ์ผ๋ก ํ์ : ๋ฐฐ์ด์ ๋ง์ง๋ง ์์๋ฅผ ๋งจ ์์ ๋ฃ๊ธฐ + ๋๋จธ์ง ์์๋ค์ ํ ์นธ์ฉ ๋ค๋ก ์ด๋
- "left" ๋ฐฉํฅ์ผ๋ก ํ์ : ๋ฐฐ์ด์ ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๋งจ ๋ค๋ก ๋ณด๋ด๊ธฐ + ๋๋จธ์ง ์์๋ค์ ํ ์นธ์ฉ ์์ชฝ์ผ๋ก ์ด๋
๐จโ๐ป 3. ์ ๋ต์ฝ๋
๋ด๊ฐ ํผ ์ฝ๋
import java.util.*; class Solution { public int[] solution(int[] numbers, String direction) { int[] answer = new int[numbers.length]; if (direction.equals("right")) { answer[0] = numbers[numbers.length-1]; for(int i = 0; i < numbers.length-1; i++) { answer[i+1] = numbers[i]; } } else { int tmpl = numbers[0]; answer[numbers.length-1] = numbers[0]; for(int i = 1; i < numbers.length-1; i++) { answer[i-1] = numbers[i]; } answer[numbers.length-2] = numbers[numbers.length-1]; } return answer; } }
์ฝ๋ ๋ฆฌ๋ทฐ & ์ฃผ์ ์ถ๊ฐ
import java.util.*; class Solution { public int[] solution(int[] numbers, String direction) { int[] answer = new int[numbers.length]; if (direction.equals("right")) { // ์ค๋ฅธ์ชฝ์ผ๋ก ํ ์นธ ํ์ answer[0] = numbers[numbers.length - 1]; // ๋ง์ง๋ง ์์๋ฅผ ๋งจ ์์ for (int i = 1; i < numbers.length; i++) { answer[i] = numbers[i - 1]; // ๋๋จธ์ง ์์๋ฅผ ํ ์นธ์ฉ ๋ค๋ก } } else if (direction.equals("left")) { // ์ผ์ชฝ์ผ๋ก ํ ์นธ ํ์ answer[numbers.length - 1] = numbers[0]; // ์ฒซ ๋ฒ์งธ ์์๋ฅผ ๋งจ ๋ค์ for (int i = 0; i < numbers.length - 1; i++) { answer[i] = numbers[i + 1]; // ๋๋จธ์ง ์์๋ฅผ ํ ์นธ์ฉ ์์ผ๋ก } } return answer; } }