Java

    LinkedList ๋ฅผ ์ด์šฉํ•ด์„œ Stack ๊ตฌํ˜„

    public class Node{ //๋…ธ๋“œ ํด๋ž˜์Šค public String data;//๋ฐ์ดํ„ฐํ•„๋“œ public Node link; public Node(String data){ super(); this.data = data; } public Node(String data, Node link){ this(data); this.link = link;} @override public String toString(){ return "Node [ data="+data+"link="+link+"]"; } public class Stack{ private Node top; //๋ฆฌ์ŠคํŠธ์˜ ์‹œ์ž‘์  private void push(String data){ Node newNode = new Node(data, top); to..

    ์žฌ๊ท€

    ์žฌ๊ท€ (Recurssion) ํ•จ์ˆ˜ ๋‚ด๋ถ€์—์„œ ์ง์ ‘ ํ˜น์€ ๊ฐ„์ ‘์ ์œผ๋กœ ์ž๊ธฐ ์ž์‹ ์„ ํ˜ธ์ถœ Base Part : ์žฌ๊ท€๋ฅผ ๋๋‚˜๋Š” ์กฐ๊ฑด์„ ์ง€๋‹Œ ํŒŒํŠธ Inductive Par : ์ž๊ธฐ ์ž์‹ ์„ ํ˜ธ์ถœํ•˜๋Š” ํŒŒํŠธ ์žฌ๊ท€์˜ ํ˜ธ์ถœ์€ ํ”„๋กœ๊ทธ๋žจ ๋ฉ”๋ชจ๋ฆฌ ๊ตฌ์กฐ์—์„œ ์Šคํƒ์„ ์‚ฌ์šฉํ•˜๊ธฐ ๋•Œ๋ฌธ์—, ๋ฐ˜๋ณต์ ์ธ ํ˜ธ์ถœ์€ ๋ฉ”๋ชจ๋ฆฌ ๋ฐ ์†๋„์˜ ์„ฑ๋Šฅ ์ €ํ•˜๋ฅผ ์•ผ๊ธฐํ•œ๋‹ค. ์˜ˆ์ œ ํŒฉํ† ๋ฆฌ์–ผ int factorial(int n){ if (n==1 || 0) return 1; else return n*factorial(n-1); } Permutation public class PermutationTest { static int N =3, R =4; static int[] numbers; static int[] input; static boolean[] isSelected;..

    1์ฐจ์› ๋ฐฐ์—ด

    ์ผ์ •ํ•œ ์ž๋ฃŒํ˜•์˜ ๋ณ€์ˆ˜๋“ค์„ ํ•˜๋‚˜์˜ ์ด๋ฆ„์œผ๋กœ ์—ด๊ฑฐํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋Š” ์ž๋ฃŒ ๊ตฌ์กฐ → ๋ณ€์ˆ˜๋กœ ํ•˜๊ธฐ ํž˜๋“  ์ž‘์—…์„ ๋ฐฐ์—ด์„ ํ†ตํ•ด ์‰ฝ๊ฒŒ ํ•ด๊ฒฐํ• ์ˆ˜ ์žˆ์Œ ๋ฐฐ์—ด ๊ธฐ๋ณธ ๋ฌธ๋ฒ• int[] arr = new int[4]; //์ž๋ฃŒํ˜• ๋ฐฐ์—ด ์ด๋ฆ„ = new ์ž๋ฃŒํ˜•[๋ฐฐ์—ด์˜ ๊ธธ์ด]; int[] arr2= new int[]{1,2,3,4}; int[] arr3; arr3 = new int[4]; //์ ‘๊ทผ: arr[0] = 10; ๋ฐฐ์—ด ์—ฐ์Šต๋ฌธ์ œ : https://swexpertacademy.com/main/identity/anonymous/loginPage.do SW Expert Academy SW ํ”„๋กœ๊ทธ๋ž˜๋ฐ ์—ญ๋Ÿ‰ ๊ฐ•ํ™”์— ๋„์›€์ด ๋˜๋Š” ๋‹ค์–‘ํ•œ ํ•™์Šต ์ปจํ…์ธ ๋ฅผ ํ™•์ธํ•˜์„ธ์š”! swexpertacademy.com

    Tree

    Tree

    ํŠธ๋ฆฌ ํŠธ๋ฆฌ๋Š” ๋น„์„ ํ˜• ์ž๋ฃŒ ๊ตฌ์กฐ๋กœ ์›์†Œ๋“ค ๊ฐ„์— 1: n ์˜ ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง„๋‹ค ์›์†Œ๋“ค ๊ฐ„์— ๊ณ„์ธต ๊ด€๊ณ„๋ฅผ ๊ฐ€์ง€๋Š” ๊ณ„์ธตํ˜• ์ž๋ฃŒ๋กœ, ์ƒ์œ„ ์›์†Œ์—์„œ ํ•˜์œ„ ์›์†Œ๋กœ ๋‚ด๋ ค๊ฐ€๋ฉด์„œ ํ™•๋‹น๋˜๋Š” ํŠธ๋ฆฌ(๋‚˜๋ฌด) ๋ชจ์–‘์˜ ๊ตฌ์กฐ๋กœ ์ด๋ฃจ์–ด์ง„ ์œ ํ•œ ์ง‘ํ•ฉ ๋…ธ๋“œ ํŠธ๋ฆฌ์˜ ์›์†Œ ํŠธ๋ฆฌ๋Š” ํ•œ๊ฐœ ์ด์ƒ์˜ ๋…ธ๋“œ๋กœ ์ด๋ฃจ์–ด์ง„ ์œ ํ•œ ์ง‘ํ•ฉ์ด๋ฉฐ ๋‹ค์Œ ์กฐ๊ฑด์„ ๋งŒ์กฑํ•œ๋‹ค ๋…ธ๋“œ ์ค‘ ์ตœ์ƒ์œ„ ๋…ธ๋“œ๋ฅผ root ๋ผ๊ณ  ํ•œ๋‹ค ๋‚˜๋จธ์ง€ ๋…ธ๋“œ๋“ค์€ n(≥0) ๊ฐœ์˜ ๋ถ„๋ฆฌ์ง‘ํ•ฉ์œผ๋กœ T1,...TN์œผ๋กœ ๋ถ„๋ฆฌ๋  ์ˆ˜ ์žˆ๋‹ค. ์ด T1,,,TN์€ ๊ฐ๊ฐ ํ•˜๋‚˜์˜ ํŠธ๋ฆฌ๊ฐ€ ๋˜๋ฉฐ(์žฌ๊ท€์  ์ •์˜) ๋ฃจํŠธ์˜ ๋ถ€ ํŠธ๋ฆฌ(subtree) ๋ผ๊ณ  ํ•œ๋‹ค ์šฉ์–ด์ •๋ฆฌ ํ˜•์ œ ๋…ธ๋“œ : ๊ฐ™์€ ๋ถ€๋ชจ ๋…ธ๋“œ์˜ ์ž์‹ ๋…ธ๋“œ๋“ค ์กฐ์ƒ ๋…ธ๋“œ: ๊ฐ„์„ ์„ ๋”ฐ๋ผ ๋ฃจํŠธ ๋…ธ๋“œ๊นŒ์ง€ ์ด๋ฅด๋Š” ๊ฒฝ๋กœ์ด ์žˆ๋Š” ๋ชจ๋“  ๋…ธ๋“œ๋“ค ์„œ๋ธŒํŠธ๋ฆฌ: ๋ถ€๋ชจ ๋…ธ๋“œ์™€ ์—ฐ๊ฒฐ๋œ ๊ฐ„์„ ์„ ๋Š์—ˆ์„ ๋•Œ ์ƒ๊ธฐ๋Š” ํŠธ..

    List

    List

    ๋ฆฌ์ŠคํŠธ ์ˆœ์„œ๋ฅผ ๊ฐ€์ง„ ๋ฐ์ดํ„ฐ ์ง‘ํ•ฉ์„ ๊ฐ€๋ฆฌํ‚ค๋Š” ์ถ”์ƒ์ž๋ฃŒํ˜• (abstract data type) ์œผ๋กœ, ๋™์ผํ•œ ๋ฐ์ดํ„ฐ๋ฅผ ๊ฐ€์ง€๊ณ  ์žˆ์–ด๋„ ์ƒ๊ด€ ์—†๋‹ค. ๋ฆฌ์ŠคํŠธ๋Š” ํฌ๊ฒŒ ๋‘๊ฐ€์ง€๋กœ ๋‚˜๋‰˜๋Š”๋ฐ, ์ˆœ์ฐจ ๋ฆฌ์ŠคํŠธ์™€ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ๊ฐ€ ์žˆ๋‹ค. ๐Ÿคฆ๐Ÿป‍โ™€๏ธ ์ˆœ์ฐจ ๋ฆฌ์ŠคํŠธ : ๋ฐฐ์—ด์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„๋œ ๋ฆฌ์ŠคํŠธ ์—ฐ๊ฒฐ ๋ฆฌ์ŠคํŠธ : ๋ฉ”๋ชจ๋ฆฌ์˜ ๋™์ ํ• ๋‹น์„ ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌํ˜„๋œ ๋ฆฌ์ŠคํŠธ ๊ตฌํ˜„ ๋ฐฉ๋ฒ• 1์ฐจ์› ๋ฐฐ์—ด์— ํ•ญ๋ณต๋“ค์„ ์ˆœ์„œ๋Œ€๋กœ ์ €์žฅํ•œ๋‹ค ๋ฐ์ดํ„ฐ์˜ ์ข…๋ฅ˜์™€ ๊ตฌ์กฐ์— ๋”ฐ๋ผ ๊ตฌ์กฐํ™”๋œ ์ž๋ฃŒ๊ตฌ์กฐ๋ฅผ ๋งŒ๋“ค์–ด ๋ฐฐ์—ด์— ์ €์žฅํ•  ์ˆ˜๋„ ์žˆ๋‹ค int [] L = {4,5,9,11 }; ๋ฐ์ดํ„ฐ ์ ‘๊ทผ ๋ฐฉ๋ฒ• ๋ฐฐ์—ด์˜ ์ธ๋ฑ์Šค๋ฅผ ์ด์šฉํ•ด ์›ํ•˜๋Š” ์œ„์น˜์˜ ๋ฐ์ดํ„ฐ์— ์ ‘๊ทผํ•  ์ˆ˜ ์žˆ๋‹ค int a = L [1]; //L =5 ์‚ฝ์ž… ์—ฐ์‚ฐ ์‚ฝ์ž… ์œ„์น˜ ๋‹ค์Œ์˜ ํ•ญ๋ชฉ๋“ค์„ ๋’ค๋กœ ์ด๋™ํ•ด์•ผ ํ•œ๋‹ค ์‚ญ์ œ ์—ฐ์‚ฐ ์‚ญ์ œ ์œ„์น˜ ๋‹ค์Œ ํ•ญ๋ชฉ๋“ค..

    QUEUE

    ํŠน์„ฑ ์Šคํƒ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ ์‚ฝ์ž…๊ณผ ์‚ญ์ œ์˜ ์œ„์น˜๊ฐ€ ์ œํ•œ์ ์ธ ์ž๋ฃŒ๊ตฌ์กฐ ์„ ์ž… ์„ ์ถœ ๊ตฌ์กฐ (First In First Out) ํ์— ์‚ฝ์ž…ํ•œ ์ˆœ์„œ๋Œ€๋กœ ์›์†Œ๊ฐ€ ์ €์žฅ๋˜๋ฉฐ, ๊ฐ€์žฅ ๋จผ์ € ์‚ฝ์ž…๋œ ์›์†Œ๊ฐ€ ๊ฐ€์žฅ ๋จผ์ € ์‚ญ์ œ๋จ ๊ธฐ๋ณธ ์—ฐ์‚ฐ : enQueue, deQueue ์ฃผ์š” ๋ฉ”์„œ๋“œ: offer(), poll(), isEmpty(), size(), peek() ์ฃผ๋กœ LinkedList ํด๋ž˜์Šค๋ฅผ Queue ์ธํ„ฐํŽ˜์ด์Šค์˜ ๊ตฌํ˜„์ฒด๋กœ ๋งŽ์ด ์‚ฌ์šฉํ•œ๋‹ค ๐Ÿคฆ๐Ÿป‍โ™€๏ธ ํ ์•ˆ์— ์•„๋ฌด๊ฒƒ๋„ ์—†์„ ๋–„, ์Šคํƒ๊ณผ ๋งˆ์ฐฌ๊ฐ€์ง€๋กœ poll() : ์‚ญ์ œ - ๋ฅผ ๋ถˆ๋ €์„ ๋•Œ, ์˜ˆ์™ธ ๋ฐœ์ƒ ์ฒ˜๋ฆฌ๊ฐ€ ์—†๋‹ค remove() : ์‚ญ์ œ - ๋ฅผ ๋ถˆ๋ €์„ ๋•Œ, ์˜ˆ์™ธ๊ฐ€ ๋ฐœ์ƒํ•œ๋‹ค ์˜ˆ์‹œ import jvava.util.Queue; import java.util.LinkedList; public ..