슬기로운슬기
[프로그래머스][Lv2][Java] 피로도
study/코딩테스트 2023. 12. 27. 14:57

문제 [완전탐색][dfs][재귀] https://school.programmers.co.kr/learn/courses/30/lessons/87946 프로그래머스 코드 중심의 개발자 채용. 스택 기반의 포지션 매칭. 프로그래머스의 개발자 맞춤형 프로필을 등록하고, 나와 기술 궁합이 잘 맞는 기업들을 매칭 받으세요. programmers.co.kr 해설 class Solution { // 최대 탐험 횟수를 저장할 전역 변수 private int max = 0; // 주어진 던전(dungeons)에서 k만큼의 에너지로 탐험할 때 최대 탐험 횟수를 반환하는 메서드 public int solution(int k, int[][] dungeons) { // 각 던전을 방문했는지 여부를 저장할 배열 int[] visi..

article thumbnail
[알고리즘] DFS(깊이우선탐색)와 BFS(너비우선탐색)
study/코딩테스트 2023. 12. 20. 20:21

그래프를 탐색하는 방법에는 크게 깊이 우선 탐색(DFS)과 너비 우선 탐색(BFS)이 있다. 그래프란? 정점(node)과 그 정점을 연결하는 간선(edge)으로 이루어진 자료구조의 일종 그래프를 탐색한다는 것은 하나의 정점으로부터 시작하여 차례대로 모든 정점들을 한 번씩 방문하는 것 DFS(깊이 우선 탐색) 시작점에서 한 갈래로 더 이상 갈 수 없을 때까지 탐색하고, 더 갈 곳이 없다면 이전의 경로로 되돌아간다. 가장 직관적이고 구현하기 쉬운 탐색 방법 현재 정점과 연결된 정점들을 하나씩 갈 수 있는지 검사하고, 특정 정점으로 갈 수 있다면 그 정점에 가서 같은 행위를 반복 같은 정점을 다시 방문하지 않도록 정점에 방문했다는 것을 표시 스택이나 재귀함수를 통해 구현 DFS의 구현 - 재귀함수 // 각 노..

[JAVA] 인터페이스(interface)
study/study_Java 2023. 10. 29. 22:48

인터페이스 (interface) 일종의 추상화 클래스 추상메서드와 상수만을 멤버로 가질 수 있음 추상클래스를 부분적으로 완성된 ‘미완성 설계도’라면 인터페이스는 밑그림만 그려져 있는 ‘기본 설계도’ 다른 클래스를 작성하는데 도움을 줄 목적으로 작성된다고 생각 interface 인터페이스이름 { public static final 타입 상수이름 = 값; public abstract 메서드이름(매개변수목록); } public static final, public abstarct 만 사용할 수 있으며 생략 가능 인터페이스 상속 인터페이스는 인터페이스로부터만 상속받을 수 있음 다중 상속이 가능 클래스와 달리 Object클래스와 같은 최고 조상이 없음 interface PostRepository extends J..

[TIL] 좋아요 기능 구현 (Java)
study/study_spring 2023. 7. 12. 21:25

Entity - Like Like : Post -> ManyToOne : 게시물 1개에 여러개의 Like 가능 Like : User -> ManyToOne : User 1명 당 여러개의 Like 가능( 각각 다른 게시물에 가능하게 할거임 ) @Getter @Entity @NoArgsConstructor @Table(name="likes") public class Like { @Id @GeneratedValue(strategy = GenerationType.IDENTITY) private Long id; //id @JoinColumn(name = "postId") @ManyToOne private Post post; @JoinColumn(name = "userId") @ManyToOne private Us..

반응형