java

1. 오늘의 문제 - 모음 사전 : 프로그래머스 (Level 2)https://school.programmers.co.kr/learn/courses/30/lessons/84512 프로그래머스SW개발자를 위한 평가, 교육, 채용까지 Total Solution을 제공하는 개발자 성장을 위한 베이스캠프programmers.co.kr  2. 문제 풀이 전략DFS로 만들 수 있는 단어를 전부 만든다.몇 번째로 만들어진 단어인지 확인한다.3. 풀이package io.conduktor.demos.dfsbfs.hanghaecote99.middler;import java.util.ArrayList;import java.util.List;// 7. 프로그래머스 - 모음 사전 - 그래프 이론public class Vowel..
1. 오늘의 문제 - 나무 자르기 - 백준 : 2805https://www.acmicpc.net/problem/2805 이분탐색!지금까지 갈고 닦은 이분탐색 실력을 뽐낼 시간이로군 2. 문제 풀이 전략이건 그냥 이분탐색만 알고 알고 있으면 간단히 해결될 것 같다. 3. 난관 봉착... 예제 입력을 넣었을 때 출력이 제대로 안 나옴근데 왜 첫 번째 예제 입력시 출력으로 15가 나와야 하는데 13이 나오는걸까? 두 번째 예제도 마찬가지. 36이 나와야 하는데 27이 나온다. 내가 작성한 로직은 아래와 같다.int result = 0;int left = 0;int right = 1000000000;while (left = M) { result = mid; left = mid + 1; ..
1. 오늘의 문제 - 알고리즘 수업 - 너비 우선 탐색 1 - 백준 : 24444번https://www.acmicpc.net/problem/24444  이름부터가 BFS로 풀라고 떠먹여준다.BFS는 참 좋다.공식만 알고 있으면 되니까.문제에서 친절하게 공식도 알려준다.2. 문제 풀이 전략2 - 1. 인접리스트로 접근정점수가 100,000 개이므로, 인접행렬로 그래프를 표현하면 메모리초과가 발생할 것이다.인접리스트로 그래프를 표현하자.// static int[][] adjMatrix; // 인접 행렬 안됩니다!static List> adjList; 2 - 2. 정렬예시의 입력을 살펴보면, 1번 정점과 4번 정점이 연결 되고, 1번 정점과 2번 정점이 연결 된다.결과적으로, 1번 정점과 연결된 정점들은 [..
1. 오늘의 문제 - 알고리즘 수업 - 깊이 우선 탐색 1 - 백준 24479번https://www.acmicpc.net/problem/24479 1년 전에 풀었던 문제가 나왔네?다시 한 번 풀어보자.다시 풀어봤는데, 첫 번째, 두 번째 제출은 틀렸고, 세 번째 만에 맞췄다.2. 문제 풀이 전략2 - 1. 인접리스트로 접근일단 정점수가 100,000이다.인접행렬로 풀 경우, 100,000 * 100,000 이니까 공간 복잡도가 어마어마해진다.정점수가 적을 때는 인접행렬로 풀어도 되지만, 이런 경우 인접리스트로 풀어야 시간초과가 안 난다.static List> adjList;2 - 2. 정렬예시의 입력을 살펴보면, 1과 4가 연결, 1과 2가 연결순으로 제시된다.1번과 연결된 놈들이  [4, 2] 가 되는..
https://www.yes24.com/Product/Goods/89649360 리팩터링 2판 - 예스24개발자가 선택한 프로그램 가치를 높이는 최고의 코드 관리 기술마틴 파울러의 『리팩터링』이 새롭게 돌아왔다.지난 20년간 전 세계 프로그래머에게 리팩터링의 교본이었던 『리팩토링』은,www.yes24.com 지난 게시글에서는 statement() 메서드 안에 요금을 계산하는 로직을 amountFor() 메서드로 추출하였고,변수명도 명확하게 변경했습니다.하지만 아직 고쳐야할 부분이 남아 있는데요.play 매개 변수가 눈에 거슬립니다. 1. play 변수 제거하기 package org.study.refactoringpractice.play;import java.text.NumberFormat;import j..
· 리팩토링
https://www.yes24.com/Product/Goods/89649360  리팩터링 2판 - 예스24개발자가 선택한 프로그램 가치를 높이는 최고의 코드 관리 기술마틴 파울러의 『리팩터링』이 새롭게 돌아왔다.지난 20년간 전 세계 프로그래머에게 리팩터링의 교본이었던 『리팩토링』은,www.yes24.com1. 리팩터링을 할 때 가장 먼저 해야할 일! - 테스트 코드  리팩토링을 진행할 때, 테스트 코드는 매우 중요한 역할을 합니다. 테스트 코드는 현재 코드의 동작을 보장하고, 변경 후에도 기능이 올바르게 작동하는지를 확인하는 데 필수적입니다. 특히, 복잡한 시스템에서 기능이 다수의 모듈과 상호작용할 때, 테스트 코드는 리팩토링 중 발생할 수 있는 예기치 않은 오류를 사전에 방지할 수 있습니다. 리팩토..
· 리팩토링
https://www.yes24.com/Product/Goods/89649360  리팩터링 2판 - 예스24개발자가 선택한 프로그램 가치를 높이는 최고의 코드 관리 기술마틴 파울러의 『리팩터링』이 새롭게 돌아왔다.지난 20년간 전 세계 프로그래머에게 리팩터링의 교본이었던 『리팩토링』은,www.yes24.com1. 목적이번 블로그 글에서는 마틴 파울러의 저서, "리팩터링 2판"에 대해 정리해보려고 합니다. 이 책은 소프트웨어 개발자가 선택한 프로그램 가치 향상의 최고 코드 관리 기술서로, 많은 개발자들에게 큰 도움을 주고 있습니다. 하지만 한 가지 알아두셔야 할 점은, "리팩터링 2판"의 예제 코드가 모두 JavaScript로 작성되어 있다는 것입니다. JavaScript는 매우 유용한 언어이지만, 저는 ..
Griotold
'java' 태그의 글 목록 (6 Page)