전체 글 (120) 썸네일형 리스트형 [해커랭크] Binary Search Tree : Insertion [JAVA] 문제링크 : www.hackerrank.com/challenges/binary-search-tree-insertion/problem Binary Search Tree : Insertion | HackerRank Given a number, insert it into it's position in a binary search tree. www.hackerrank.com 현재 노드보다 데이터가 크면 right, 작으면 left를 탐색한다 null인 위치에 데이터를 삽입하고 부모 노드의 포인터가 가리키도록 한다. public static Node insert(Node root,int data) { Node insertNode = new Node(data); if(root ==null) { return inse.. [해커랭크] Tree: Level Order Traversal [JAVA] 문제링크 : www.hackerrank.com/challenges/tree-level-order-traversal/problem Tree: Level Order Traversal | HackerRank Level order traversal of a binary tree. www.hackerrank.com 노드의 height가 낮을수록, 왼쪽 노드일 수록 먼저 출력하는 코드다. 같은 레벨의 노드를 먼저 출력하기 위해서 같은 높이의 노드들을 left 노드부터 큐에 담도록 짰다 public static void levelOrder(Node root) { Queue q = new LinkedList(); q.offer(root); while(!q.isEmpty()){ int q_size= q.size(); f.. [해커랭크] Tree: Postorder Traversal [JAVA] 문제링크 : www.hackerrank.com/challenges/tree-postorder-traversal/problem Tree: Postorder Traversal | HackerRank Print the post order traversal of a binary tree. www.hackerrank.com public static void postOrder(Node root) { if(root==null) return; postOrder(root.left); postOrder(root.right); System.out.print(root.data + " "); } [해커랭크] Tree: Height of a Binary Tree [JAVA] 문제링크 : www.hackerrank.com/challenges/tree-height-of-a-binary-tree/problem Tree: Height of a Binary Tree | HackerRank Given a binary tree, print its height. www.hackerrank.com 재귀를 한단계 수행할 때마다 리턴받을 값이 하나씩 증가하게 된다 public static int height(Node root) { if(root==null)return -1; int ret = 0; ret = Math.max(height(root.left),height(root.right)); return ret+1; } [해커랭크] Tree: Inorder Traversal [JAVA] 문제링크 : www.hackerrank.com/challenges/tree-inorder-traversal/problem Tree: Inorder Traversal | HackerRank Print the inorder traversal of a binary tree. www.hackerrank.com public static void inOrder(Node root) { if(root==null) return; inOrder(root.left); System.out.print(root.data +" "); inOrder(root.right); } [해커랭크] Tree: Preorder Traversal [JAVA] 문제링크 : www.hackerrank.com/challenges/tree-preorder-traversal/problem Tree: Preorder Traversal | HackerRank Print the preorder traversal of a binary tree. www.hackerrank.com public static void preOrder(Node root) { if(root==null) return; System.out.print(root.data + " "); preOrder(root.left); preOrder(root.right); } [해커랭크] Find Merge Point of Two Lists 문제링크: www.hackerrank.com/challenges/find-the-merge-point-of-two-joined-linked-lists/problem Find Merge Point of Two Lists | HackerRank Given two linked lists, find the node where they merge into one. www.hackerrank.com N*M 시간복잡도의 해결법밖에 생각나지 않았다. 구현 했더니 통과는 됐는데 찝찝한 채로 다른 사람의 풀이를 봤다. 댓글 반응은 아주 좋았는데 코드를 봐도 어떤 풀인지 이해하는데 한참 걸렸다. 그 풀이를 설명한 다른 블로그가 있는데 그것을 참고하면 좋을 듯 하다. *이 문제를 마지막으로 해커랭크 링크드리스트 문제를 모두 .. [해커랭크] Delete duplicate-value nodes from a sorted linked list 문제링크: www.hackerrank.com/challenges/delete-duplicate-value-nodes-from-a-sorted-linked-list/problem Delete duplicate-value nodes from a sorted linked list | HackerRank Given a linked list whose nodes have data in ascending order, delete some nodes so that no value occurs more than once. www.hackerrank.com 아주 재밌는 문제였다. 두 가지 방법으로 풀었다. 비슷한 방식이지만 처음 문제를 풀고나니 재귀로 간결하게 풀릴 것 같아서 바로 다시 풀었다. 방법1 -포인터cur와,.. 이전 1 ··· 6 7 8 9 10 11 12 ··· 15 다음