https://www.acmicpc.net/problem/2346 처음 보자마자, 이건 양방향 연결 리스트를 사용하면 되겠구나 라는 생각이 들었다. 코드import java.io.*;import java.util.StringTokenizer;class Balloon { public int index; public int value; public Balloon prev; public Balloon next; public Balloon(int index, int value) { this.index = index; this.value = value; }}public class Main { public static void main(String[] ..
자료구조 & 알고리즘 관련
Queue 2개로 Stack구현하기 import java.util.LinkedList; import java.util.Queue; public class Stack { private Queue q1; private Queue q2; public Stack() { this.q1 = new LinkedList(); this.q2 = new LinkedList(); } public void push(T value) { q1.add(value); } public T pop() { while (q1.size() > 1) { q2.add(q1.poll()); } Queue temp = q1; q1 = q2; q2 = temp; return q2.poll(); } @Override public String toStr..
Stack 두개를 이용하여 Queue구현하기 자바 import java.util.Stack; class Queue { Stack inStack; Stack outStack; public Queue() { this.inStack = new Stack(); this.outStack = new Stack(); } public void enqueue(T value) { inStack.add(value); } public T dequeue() { if (!inStack.isEmpty()) { while(!inStack.isEmpty()) { outStack.add(inStack.pop()); } } return outStack.pop(); } @Override public String toString() { re..
두둥.. 다시 코테를 준비하기로 마음 먹었다.! 그래서 다시 초심으로 돌아가서 공부일지를 쓰려고 하고, 그 시작은 자료구조란? 뭘까?? 데이터를 저장하고 관리하는 방식 컴퓨터 구조 관점에서 생각해보기로 하자! 데이터를 저장하는 곳은 어디일까? 더보기 메모리(Memory) HDD, RAM이 대표적이라고 볼 수 있다. 코딩을 막 짜고 스프링 부트에서 Application을 실행시킬때의 코드이당. -> 요즘 하고 있는 사이드 플젝 public class BoardBackApplication { public static void main(String[] args) { SpringApplication.run(BoardBackApplication.class, args); } } 저장버튼을 누르면 코드들이 하드디스크..
https://school.programmers.co.kr/learn/courses/30/lessons/42746?language=java 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr def solution(numbers): number_st = [str(num) for num in numbers] number_st = number_st.sort(key=lambda x: x * 3, reverse=True) return ''.join(str(number_st)) import java.util.Arrays; class Solution { public St..
https://www.acmicpc.net/problem/7576 7569번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N과 쌓아올려지는 상자의 수를 나타내는 H가 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M ≤ 100, 2 ≤ N ≤ 100, www.acmicpc.net https://www.acmicpc.net/problem/7569 7576번: 토마토 첫 줄에는 상자의 크기를 나타내는 두 정수 M,N이 주어진다. M은 상자의 가로 칸의 수, N은 상자의 세로 칸의 수를 나타낸다. 단, 2 ≤ M,N ≤ 1,000 이다. 둘째 줄부터는 하나의 상자에 저장된 토마토 www.acmicpc.net from collections import de..