트리 (Tree)
정의: 노드들 간에 계층적인 관계를 가지는 자료구조로, 루트 노드에서부터 시작하여 브랜치와 리프 노드로 이어지는 구조.
자바 예제코드: 이진 트리(Binary Tree)의 예시
// 이진 트리 노드 클래스 class TreeNode { int data; TreeNode left, right; public TreeNode(int item) { data = item; left = right = null; } } // 이진 트리 클래스 public class BinaryTree { TreeNode root; public BinaryTree() { root = null; } // 이진 트리 순회 메소드 (예: 중위 순회) public void inOrder(TreeNode node) { if (node == null) return; inOrder(node.left); System.out.print(node.data + " "); inOrder(node.right); } public static void main(String[] args) { BinaryTree tree = new BinaryTree(); tree.root = new TreeNode(1); tree.root.left = new TreeNode(2); tree.root.right = new TreeNode(3); tree.root.left.left = new TreeNode(4); tree.root.left.right = new TreeNode(5); System.out.println("Inorder traversal of binary tree is "); tree.inOrder(tree.root); } }
해싱 (Hashing)
정의: 데이터를 효율적으로 저장하고 검색하기 위한 자료구조로, 해시 함수를 사용하여 데이터를 고유한 값으로 매핑하여 저장함.
자바 예제코드: 해시맵(HashMap)의 예시
import java.util.HashMap; public class HashMapExample { public static void main(String[] args) { // 해시맵 생성 HashMap<String, Integer> hashMap = new HashMap<>(); // 데이터 추가 hashMap.put("apple", 10); hashMap.put("banana", 20); hashMap.put("orange", 30); // 데이터 검색 System.out.println("Value of key 'apple': " + hashMap.get("apple")); // 데이터 삭제 hashMap.remove("banana"); // 해시맵 크기 확인 System.out.println("Size of HashMap: " + hashMap.size()); } }
'개인 블로그' 카테고리의 다른 글
| [모각코 5주차 개인 블로그] 스택,큐,덱 (0) | 2024.02.09 |
|---|---|
| [모각코 4주차 개인블로그] 이진탐색 (0) | 2024.02.09 |
| [모각코 3주차 개인블로그] 정렬 (0) | 2024.02.09 |
| [모각코 2주차 개인 블로그] 배열과 연결리스트 (0) | 2024.02.09 |
| [모각코 1주차 개인 블로그] JAVA 기본 문법 복습 (1) | 2024.01.10 |