ALL

카테고리 없음

[프로그래머스] Lv.1 소수 찾기

⚠️JAVA 언어를 사용합니다. 소수 문제.. 너무 어렵다 🔒문제 1부터 입력받은 숫자 n 사이에 있는 소수의 개수를 반환하는 함수, solution을 만들어 보세요. 소수는 1과 자기 자신으로만 나누어지는 수를 의미합니다. (1은 소수가 아닙니다.) 제한 조건 n은 2이상 1000000이하의 자연수입니다. 🗝️정답 import java.util.Set; import java.util.HashSet; class Solution { public int solution(int n) { //1. 선언 및 초기화 Set set = new HashSet (); set.add(2); for(int i=3; i

카테고리 없음

[프로그래머스] Lv.1 (1차) 비밀지도

⚠️JAVA 언어를 사용합니다. 카카오 문제인데 생각보다 괜찮아서 작성해 본다. 여기서 String.format()이라는 함수를 접해서 기록하려고 한다. 🔒문제 네오는 평소 프로도가 비상금을 숨겨놓는 장소를 알려줄 비밀지도를 손에 넣었다. 그런데 이 비밀지도는 숫자로 암호화되어 있어 위치를 확인하기 위해서는 암호를 해독해야 한다. 다행히 지도 암호를 해독할 방법을 적어놓은 메모도 함께 발견했다. 지도는 한 변의 길이가 n인 정사각형 배열 형태로, 각 칸은 "공백"(" ") 또는 "벽"("#") 두 종류로 이루어져 있다. 전체 지도는 두 장의 지도를 겹쳐서 얻을 수 있다. 각각 "지도 1"과 "지도 2"라고 하자. 지도 1 또는 지도 2 중 어느 하나라도 벽인 부분은 전체 지도에서도 벽이다. 지도 1과 지..

카테고리 없음

[자료구조, Java] 비선형 자료구조 - 트리(Tree)

✅ 비선형 자료구조 : i 번째 값을 탐색한 뒤의 i+1이 정해지지 않은 구조 트리(Tree)? 계층적인 자료를 표현하는 데 이용되는 자료구조. 그래프의 한 종류이다. 예) 컴퓨터 directory 노드(Node) : 그래프의 정점 루트 노드 : 트리의 기준이 되는 노드. 나무의 뿌리를 생각하면 된다. 루트 노드에서 가지가 뻗어나가는 이미지. 부모 노드 : 자신과 인접한 노드들 중 루트 노드로 향하는 노드 자식 노드 : 자신과 인접한 노드들 중 루트 노드의 반대 방향으로 향하는 노드 단말 노드 : 자식 노드가 존재하지 않는 노드. 가지의 끝 형제 노드 : 부모 노드가 같은 노드 가지(Branch) : 그래프의 간선. 트리에서는 양방향 간선만 사용한다. 부트리(Sub Tree) : 부분 그래프와 비슷하게 ..

카테고리 없음

[알고리즘, Java] 깊이 우선 탐색(DFS), 너비 우선 탐색(BFS)

✅그래프 순회 알고리즘 : 하나의 정점으로부터 시작하여 차례대로 모든 정점을 한 번씩 방문하는 것 깊이 우선 탐색(Depth Sirst Search, DFS) 깊은 부분을 우선적으로 탐색하는 알고리즘 실행 과정 첫 정점을 방문한다. 인접한 정점 중 아직 방문하지 않은 정점을 방문한다. 이때 한 길로 쭉 파고 들어간다. 더 이상 들어갈 길이 없으면(인접한 모든 정점에 이미 방문했으면), 방문하지 않은 인접한 정점을 찾을 때까지 들어온 길을 돌아간다. 위 과정을 반복한다. 구현 1. 순환 호출 이용 재귀함수를 필요로 함. 공부 후 내용 추가 더보기 코드 출처 import java.io.*; import java.util.*; /* 인접 리스트를 이용한 방향성 있는 그래프 클래스 */ class Graph {..

카테고리 없음

[자료구조, Java] 비선형 자료구조 - 그래프

✅ 비선형 자료구조 : i 번째 값을 탐색한 뒤의 i+1이 정해지지 않은 구조 그래프(Graph)? 정점(vertex)과 간선(edge)으로 이루어진 자료구조이다. 즉, 연결되어 있는 객체 간의 관계를 표현한다. 정점마다 간선이 있을 수도 있고 없을 수도 있다. 정점(vertex) : 위치라는 개념. node라고도 부름 간선(edge) : 위치 간의 관계. 즉, 노드를 연결하는 선. link, branch라고도 부름 인접 정점 : 간선에 의해 직접 연결된 정점 차수 : 무방향 그래프에서 하나의 정점에 인접한 정점의 수 진입 차수(내차수) : 방향 그래프에서 외부에서 오는 간선의 수 진출 차수(외차수) : 방향 그래프에서 외부로 향하는 간선의 수 경로 길이 : 경로를 구성하는 데 사용된 간선의 수 단순 경..

카테고리 없음

[프로그래머스] Lv.1 문자열 나누기

⚠️JAVA 언어를 사용합니다. 무려 이 문제를 2시간 반이나 잡고있었다... 이유는 문제를 잘못 해석해서🥲 🔒문제 문자열 s가 입력되었을 때 다음 규칙을 따라서 이 문자열을 여러 문자열로 분해하려고 합니다. 먼저 첫 글자를 읽습니다. 이 글자를 x라고 합시다. 이제 이 문자열을 왼쪽에서 오른쪽으로 읽어나가면서, x와 x가 아닌 다른 글자들이 나온 횟수를 각각 셉니다. 처음으로 두 횟수가 같아지는 순간 멈추고, 지금까지 읽은 문자열을 분리합니다. s에서 분리한 문자열을 빼고 남은 부분에 대해서 이 과정을 반복합니다. 남은 부분이 없다면 종료합니다. 만약 두 횟수가 다른 상태에서 더 이상 읽을 글자가 없다면, 역시 지금까지 읽은 문자열을 분리하고, 종료합니다. 문자열 s가 매개변수로 주어질 때, 위 과정과..

카테고리 없음

[알고리즘, Java] 선형 자료구조 탐색법 - 순차탐색, 이분탐색

순차 탐색(Sequential Search) 시작점부터 순차적으로 탐색하는 것 시간복잡도 10개의 데이터를 순차적으로 탐색했을 때 걸리는 평균 연산 횟수는 이고, 따라서 데이터의 크기가 n일 때 연산횟수는 이므로 전부 탐색했을 때 시간복잡도는 O(n)이다. 사진 출처 : https://earthteacher.tistory.com/43#gsc.tab=0 구현 for (int i = 0; i < list.size(); i++) { if(list.get(i) == searchItem) return i; } 간단하게 살펴보면 리스트(또는 배열)가 있을 때, 첫 데이터부터 하나씩 가져와서 찾는 데이터와 비교한다. 가져온 데이터가 찾는 데이터와 일치하면 인덱스를 반환한다. 이진 탐색(Binary Search) 정렬..

카테고리 없음

[자료구조, Java] 선형 자료구조 - 1. 랜덤 접근 불가능 - 연결 리스트(Linked List)

✅ 자료구조 : 데이터를 저장하는 방식 ✅ 선형 자료구조 : 한 종류의 데이터가 선처럼 길게 나열된 자료구조 랜덤 접근 불가능? 모든 자료에 O(1)으로 접근이 보장되지 않는 자료구조들 연결 리스트(Linked List) 각 노드가 데이터와 포인터를 가지고 한 줄로 연결되어 있는 방식의 자료구조 노드의 포인터가 이전, 다음 노드와의 연결을 담당한다. 단일 연결 리스트(Singly Linked List) 각 노드가 다음 노드에 대해서만 참조하는 가장 단순한 형태의 연결 리스트 일반적으로 큐를 구현할 때 사용된다. Head 노드를 잃어버려 참조하지 못하는 경우 데이터 전체를 사용 못하게 되는 단점이 있다 FAT 파일 시스템이 단일 연결 리스트로 파일 청크(동적 메모리로 할당되는 영역)를 연결합니다.(?) 이..

카테고리 없음

[MySQL 문법] 데이터 삽입, 조회, 수정, 삭제

데이터 삽입 INSERT INTO 테이블에 새 레코드를 삽입할 때 사용 INSERT INTO table_name (column1, column2, column3, ...) VALUES (value1, valus2, value3, ...); 만약 모든 열에 대한 값을 추가하는 경우 열 이름은 지정할 필요가 없다. 열과 값의 순서가 같아야 한다. 데이터 조회 SELECT 데이터를 선택해서 조회할 수 있음 SELECT column1, column2, ... FROM table_name WHERE condition; column1, column2, ... : 데이터를 선택하려는 테이블의 필드 이름 모든 필드를 조회할 때 : SELECT * FROM table_name; ⭐WHERE 레코드를 필터링하는 데 사용한..

jin-dooly
'분류 전체보기' 카테고리의 글 목록 (5 Page)