목록코드 (15)
MyCloud
안드로이드의 SharedPreference 보통 안드로이드에서 데이터를 저장하는 방법으로 데이터베이스를 사용합니다.하지만 데이터베이스를 사용하지 않고도 데이터를 저장할 수 있는 방법이 있습니다.바로 SharedPreference를 사용하는 방법입니다 ! SharedPreference는 Map구조인 key-value 형태로 데이터를 저장합니다.이렇게 저장된 데이터는 어플리케이션이 삭제되기 전까지 내부에 파일형태로 보관됩니다. SharedPreference 사용하는 방법 SharedPreference를 사용하기 위해서는 먼저 클래스를 생성해야 합니다.SharedPreferences pref = getSharedPreferences("Game", Activity.MODE_PRIVATE);위의 생성과정에서 "G..
자료구조 - 이진탐색트리 앞서 포스팅했던 이진트리를 활용한 이진탐색트리입니다. 이진탐색트리는 탐색작업을 효율적으로 하기 위한 자료구조입니다! 탐색이란 사전에서 검색하고자 하는 단어를 찾거나, 서점에서 책을 찾는 것과 같이 자료를 속에서 필요한 자료를 찾아내는 것을 말합니다. 탐색구조에서 탐색을 하기 위해서 찾을 자료를 식별할 수 있는 유일한 값을 키(Key) 라고 합니다. 이진탐색트리에서는 저장할 데이터의 크기, 즉 키에 따라 노드의 위치를 정의합니다. 그리고 이진탐색트리를 중위 순회 방법(LVR)으로 순회하면 숫자 크기 순으로 정렬된다는 성질이 있습니다. 이진탐색트리의 정의는 다음과 같습니다. 1. 모든 노드의 키는 유일하다. 2. 왼쪽 서브 트리의 원소의 키는 그 루트의 키보다 작다. 3. 오른쪽 서..
자료구조 - 이진트리 이진트리는 각 노드가 최대 2개의 서브트리를 가지는 트리를 말합니다! 자바로 이진트리를 구현해보겠습니다. JAVA로 이진트리 구현 12345678910111213141516public class Node { private int data; private Node left; private Node right; public Node(int data) { this.setData(data); } public int getData() {return data;} public void setData(int data) {this.data = data;} public Node getLeft() {return left;} public void setLeft(Node left) {this.left = ..
자료구조 - 트리, 이진트리 트리는 부모-자식 관계의 노드들로 이루어지며 계층적인 구조를 나타내는 자료구조입니다. 운영체제의 파일시스템, HTML, XML 등을 다룰 때 사용하는 DOM, 데이터베이스 등 다양하게 활용되고 있습니다. 트리구조에서 중요한 것은 부모는 여러 자식을 가질 수 있지만 자식은 하나의 부모를 갖는다는 것입니다. 이진트리는 각 노드가 최대 2개의 자식을 가지는 트리를 말합니다. 위의 그림은 포화이진트리 구조입니다. 모든 노드가 2개의 자식을 갖기 때문입니다. 트리의 최상단 노드를 뿌리, 즉 루트(Root)라고 합니다. 루트로부터 어떤 노드까지의 거리를 그 노드의 깊이(Depth)라 하고 깊이가 같은 노드끼리의 집합을 레벨(Level)이라 합니다. 같은 부모를 가진 노드들을 형제(Sib..
자료구조 - 큐 큐는 먼저 들어온 데이터가 먼저 나가는 선입선출(LIFO) 구조입니다.큐에는 삽입(ENQUEUE) 연산과 삭제(DEQUEUE) 연산이 존재하는데삽입의 경우 가장 마지막 위치(Rear)에 쌓이게 되며삭제의 경우 가장 먼저 들어온 데이터, 즉 Front 에 위치한 데이터가 삭제 됩니다.예를 들면, 줄을 서서 물건을 받는 경우를 생각하시면 됩니다! JAVA로 Queue 구현 큐를 구현하는 방법은 2가지가 있습니다.배열을 이용한 큐와 연결리스트를 이용한 큐입니다.먼저 배열을 이용한 큐의 구현입니다. 12345678910111213public class CQueueArray { private int front; private int rear; private int maxSize; private O..