티스토리 뷰
반응형
15일차 코드 리뷰를 진행해보자.
15 일 문제는 LinkedList의 insert 메서드를 완성시키는 문제였다.
예제에서는 getNext(), setNext() 등의 메서드를 만들고
insert, delete 등의 기능을 만들었으나
문제에서는 getter, setter가 구현되어 있지 않아서
조금 헷갈렸다.
인터넷 검색을 하다가 다음의 강의를 참고하여
문제를 해결했다.
https://www.youtube.com/watch?v=uoZ-kvv9flU
그럼 소스코드를 살펴보자.
import java.util.*;
class Node {
int data;
Node next;
Node(int d) {
data = d;
next = null;
}
}
class Test {
public static Node insert(Node head,int data) {
//Complete this method
Node n = new Node(data);
if(head==null) {
return n;
}else {
Node temp = head;
while(temp.next!=null) {
temp = temp.next;
}
temp.next = n;
return head;
}
}
public static void display(Node head) {
Node start = head;
while(start != null) {
System.out.print(start.data + " ");
start = start.next;
}
}
public static void main(String args[]) {
Scanner sc = new Scanner(System.in);
Node head = null;
int N = sc.nextInt();
while(N-- > 0) {
int ele = sc.nextInt();
head = insert(head,ele);
}
display(head);
sc.close();
}
}
아까도 말했다 싶이
문제에서 구현해야 하는 부분은
insert 부분인데
public static Node insert(Node head,int data) {
//Complete this method
Node n = new Node(data);
if(head==null) {
return n;
}else {
Node temp = head;
while(temp.next!=null) {
temp = temp.next;
}
temp.next = n;
return head;
}
}
예제에서 풀었던 insert 메서드와
알고리즘을 유사하나
getter, setter를 사용하지 않은 점이 다르다.
// add
public void add(int newData) {
Node temp = new Node(newData);
Node current = head;
while(current.getNext() != null) {
current = current.getNext();
}
current.setNext(temp);
count++;
}
필자도 아직 소스코드 직접 구현은
조금 헷갈리나
그래도 linkedList의 개념과 소스코드를 조금만 반복한다면
알고리즘에서 이해안되는 부분은 딱히 없을 것이라 생각한다.
슬슬 어려워지는만큼
많이 반복해야겠다.
그럼 내일 16일 챌린지로 다시 만나자. 🔥
반응형
'해커랭크 챌린지' 카테고리의 다른 글
[hackerrank] hackerrank challenges Day 16 자바 코드 리뷰 (0) | 2022.07.09 |
---|---|
[hackerrank] hackerrank challenges Day 16 자바 강의 리뷰 (0) | 2022.07.09 |
[hackerrank] hackerrank challenges Day 15 자바 강의 리뷰 (0) | 2022.07.08 |
[hackerrank] hackerrank challenges Day 14 자바 코드 리뷰 (0) | 2022.07.07 |
[hackerrank] hackerrank challenges Day 14 자바 강의 리뷰 (0) | 2022.07.07 |
공지사항
최근에 올라온 글
최근에 달린 댓글
- Total
- Today
- Yesterday
링크
TAG
- 자바
- 해커랭크 자바 챌린지
- 디버깅
- 정보처리산업기사 공부법
- 개발자
- 정보처리 산업기사
- LinkedList
- 소스코드
- 해커랭크 챌린지
- 챌린지
- 풀이
- 22 정보처리산업기사
- 해커랭크 자바
- 해커랭크
- 강의
- 코드
- hackerrank
- ORM
- 자바의 정석
- BAEKJOON
- queue
- hackerrank challenges
- Java
- 백준
- challenges
- 정보처리산업기사
- 22 정보처리 산업기사
- JPA
- stack
- 그리디
일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | ||||||
2 | 3 | 4 | 5 | 6 | 7 | 8 |
9 | 10 | 11 | 12 | 13 | 14 | 15 |
16 | 17 | 18 | 19 | 20 | 21 | 22 |
23 | 24 | 25 | 26 | 27 | 28 |
글 보관함