본문 바로가기

전체 글273

앞으로의 백엔드 공부 계획 (feat. 백엔드 공부법) 정신없이 7월 한 달차가 끝났다. 정말 어떻게 지나갔는지 모르겠다. 지금의 나는 잘 체감이 안 되지만 한 달전의 나와 비교해보면 정말 발전한 내가 된 것 같다. 어렵기만했던 스트림을 자유자재로 쓸 수 있는 내가 너무 신기하다. 이번 8월부터는 CS와 데이터베이스다. 면접에도 꼭 필요한 부분같으니 잘 배워두도록 해야겠다. 비선형자료구조 파트는 어려운 것 같아서 3회독을 하고 있었는데 그러다보니 시간이 부족해 챕터 마지막 연습문제들이 계속 쌓여만 간다. 그래서 공부방식을 바꿔보기로 했다. 개념은 어느정도 알고있으니 강의를 다시 듣는 것보다는 한 문제라도 더 풀고 실전감각을 익히면서 유형을 아는 것에 집중해야겠다. pre코딩테스트는 이번 주가 마지막이고 다음 주부턴 목요일마다 진짜로 코딩테스트를 보게되니까 뭔.. 2023. 8. 4.
Pre 코딩테스트 1회차 회고 (1-1~1-5) 문제는 공유불가라 올릴 수 없지만 새로 안 사실이 너무 많아서 신나서 쓴다 !!! 나도 어렵지 않게 풀었던 문제들이지만 더 간단하게 풀 수 있었던 사실 !!!!! * StringBuilder 다시 보기 나는 이제껏 .append()로 값들을 이어서 빠르게 출력해줄 때만 사용했었는데 기능들이 정말 많았다. - sb.append("*".repeat(5)); 하면 *을 5번 sb에 넣어준다 !!! 와웅 -sb.reverse(); //문자열 뒤집기 문자열이 들어왔을 때 뒤집어서 출력하는 것 같은 경우에 나는 스택에 넣어서 꺼내는 방식을 썼는데 StringBuilder를 사용하면 한 줄로도 가능했다. String s = "apple"; StringBuilder sb = new StringBuilder(s); re.. 2023. 7. 28.
백엔드 커리어 로드맵 - 어떤 백엔드 개발자가 되고 싶은지 사진은 백엔드 개발자 로드맵이다. 학교다닐 때 모 기업에 다니시는 분이 특강을 나와서 보여주신 적이 있었는데 한창 졸작을 하던 때여서 졸작 팀원들과 같이 보며 우리 개발자 정말 할 수 있을까 하는 우울함에 빠졌었다. 그때는 정말 기본적인 웹 개발도 더듬더듬 하고 있었기에 알아야될게 정말 많은 것 같 막막함이 먼저 들었다. 지금와서 차근차근 보니 OS 지식부터 개발 설계원칙까지 다 꼭 필요한 내용들인 것 같다. 지금 배우고 있는 부트캠프에서 OS 지식들도, 프로젝트를 하며 개발이나 설계원칙들도 습득할 수 있을 것 같다. DB만해도 종류가 정말많고 언어도 정말 많지만 프로그래밍 언어라는게 하나만 제대로 할 줄 알면 다른 것들을 배우는 것에 수월해지는 걸 경험해봤다. 배우는 내용에 중점을 두어 마스터를 하면 .. 2023. 7. 28.
(백준/자바) 힌트문제2 05. 트리 - 백준 11725번 문제 : 트리의 부모 찾기 11725번: 트리의 부모 찾기 (acmicpc.net) 11725번: 트리의 부모 찾기 루트 없는 트리가 주어진다. 이때, 트리의 루트를 1이라고 정했을 때, 각 노드의 부모를 구하는 프로그램을 작성하시오. www.acmicpc.net 강의에서 막 트리를 배워서 응용을 해봤다. - Node 클래스 : 각 노드의 data값과 부모노드 parent, 왼쪽 자식노드 left, 오른쪽 자식노드 right class Node{ int data; Node parent; Node left; Node right; public Node(int data, Node left, Node right, Node parent) { this.data = data; this.parent = parent; this.left = lef.. 2023. 7. 26.
(프로그래머스/자바) 힌트문제2 04. 문자열 - 프로그래머스 : 문자열안에 문자열 코딩테스트 연습 - 문자열안에 문자열 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr String의 메소드contains를 이용해서 간단하게 풀었다. public class String_04 { public static int solution(String str1, String str2) { int answer = 2; if(str1.contains(str2)){ answer = 1; } return answer; } public static void main(String args[]){ System.. 2023. 7. 25.
(백준/자바) 힌트문제2 03. 구현 - 백준 5613번 문제 : 계산기 프로그램 5613번: 계산기 프로그램 (acmicpc.net) 5613번: 계산기 프로그램 입력의 각 줄에는 숫자와 +, -, *, /, =중 하나가 교대로 주어진다. 첫 번째 줄은 수이다. 연산자의 우선 순위는 생각하지 않으며, 입력 순서대로 계산을 하고, =가 주어지면, 그때까지의 결과를 출 www.acmicpc.net 주어지는 수와 계산 결과가 int형으로 충분히 될 거라고 생각했다. queue와 stack을 이용해서 풀었다. q에 =을 제외한 모든 피연산자와 연산자를 담아놓고 q에서 하나씩 빼면서 진행. 피연산자라면 stack에 push, 연산자면 stack에서 pop하는데 중위연산이므로 stack에는 하나의 숫자밖에 들어있지않음 그래서 stack.pop 하나, q.poll하나 이렇게 피연산자를 두 개 구.. 2023. 7. 25.
(프로그래머스/자바) 힌트문제2 02. 배열 - 프로그래머스 : 배열 회전시키기 코딩테스트 연습 - 배열 회전시키기 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 보자마자 데크를 이용하면 되겠다는 생각이 들었다. directions이 right면 q.offerFirst(q.pollLast()); left면 그 반대 여기서 q를 배열로 바꾸기 위해서 stream을 사용했다. 리스트를 배열로 바꿀 때랑 똑같다. answer = q.stream().mapToInt(x-> x).toArray(); import java.util.ArrayDeque; import java.util.Deq.. 2023. 7. 25.
(프로그래머스/자바) 힌트문제2 01. 해시테이블 - 프로그래머스 : 한 번만 등장한 문자 코딩테스트 연습 - 한 번만 등장한 문자 | 프로그래머스 스쿨 (programmers.co.kr) 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해시테이블을 이용한 문제라고 알려주셔서 여기에 처음에 문자열을 찢어서 저장하려고 했는데 그러면 중복된 문자열이어도 최초 한 번은 저장을 하게 된다. 그래서 Hashtable의 gerOrdefault 메소드 사용해서 해당 문자열을 키값으로 두고 나온 횟수를 value에 저장. value값이 1인 key만 list에 저장하고 list를 정렬하여 완성했다. import java.util.ArrayList; import.. 2023. 7. 25.
미니과제 리뷰 수월하게 푼 것도 있고 시간을 많이 쓴 것도 있는데 피드백 주신 사항들로 다시 리뷰 해보려고 한다. 1번 구구단 출력 5/5 - 구구단 출력 조건문을 i < 10 보다 i =3 && age17) price = 4000; if(age < 3) price = 0; System.out.println("입장료: "+price); scanner.close(); } } 근데 사실 if를 줄줄이 쓴 이유가 있었는데 만약에 위에서 조건을 만족하면 아래에 안 걸려버리니까 더 큰 금액을 할인 받을 수 있어도 위에서 걸리고 만다. 엥 . . 그럼 가장 큰 할인 받을 수 있는 조건부터 위에다 쓰고 if, else if로 쓰면 되잖아 ? import java.util.Scanner; public class JavaStudy03.. 2023. 7. 24.
728x90