MapleStory Finger Point

💡 URECA/🗒️ 스터디 노트

고양이 파일 😺light@YSH MINGW64 ~/Documents/Github/Git-Test/te$ git init // 파일안에 git 생성Initialized empty Git repository in C:/Users/ligt1/cat/.git/light@YSH MINGW64 ~/Documents/Github/Git-Test/te$ git config user.name cat // name 생성light@YSH MINGW64 ~/Documents/Github/Git-Test/te$ git config user.email cat@git.com // email 생성light@YSH MINGW64 ~/Documents/Github/Git-Test/te$ vim README.md // git bash창..
버전관리내가 원하는 시점(버전)으로 이동할 수 있게 해주는 것 버전 관리 시스템이를 도와주는 툴 Git 소스 코드 버전 관리 시스템 GithubGit 호스팅 사이트 중 하나 vim 메모장i 입력하고 들어가기입력 완료했으면 esc키  vim 메모장i 입력하고 들어가기입력 완료했으면 esc키 :wq 입력하면 원래 화면 이동그러면 저장되고 나온다.  cat 파일명  입력하면파일 내용 나온다.  git init을 입력하면 git 초기화 과정 완료 커밋을 해야 로컬 저장소에 저장된다.$ git config --list | grep user      README.md가 붉게 나오는건커밋전 add를 하라는 말       빩간색 사라지고 녹색생김                    전체 과정 한번 더 다시! git lo..
(9) 그래프 응용 - 백트래킹 a) 해를 찾기 위해서 후보군을 나열하고, 만약 조건에 맞지 않다면 후보군에서 제외하고 돌아와 다음 후보군을 찾는 방식 백트래킹은 트리 구조를 기반으로 DFS 방식을 진행하면서 각 루트에 대해 조건에 부합했는지 체크(Promising)만약 해당 트리에서 조건에 맞지 않는 노드를 발견한다면, 더 이상 탐색을 멈추고, 다른 노드로 가기 위해 현재 가지를 버림(Pruning)백트래킹에서 검색할 후보들을 상태 공간 트리(State Space Tree)로 표현 8-Queens라면 8^8=16,000,000이넘는 경우의 수를 확인해야 하는데 Pruning을 하면 약 4000~5000정도만 탐색하여 92개의 해를 얻게 됨import java.util.LinkedList;import j..
MST 알고리즘Kruskal(대표적인 그리디 알고리즘)서로소 집합 서로소 집합 코드public class DisjointSetExample { // 부모 노드를 저장할 배열 static int[] p; // 집합을 초기화하는 메서드 static void makeSet(int V) { // V개의 원소를 가지는 배열을 생성 p = new int[V]; // 각 원소의 부모를 자기 자신으로 초기화 for (int i = 0; i Kruskal 설명 (O(E log V))이전 단계에서 만들어진 신장 트리와는 상관없이 무조건 최소 간선만을 선택하는 방법 방법: 1. 그래프의 간선들을 가중치의 오름차순으로 정렬한다. 2. 정렬된 간선 리스트..
그래프를 탐색하는 방법 2 - BFS(Breadth-First Search) : 인접행렬-O(V^2), 인접리스트- O(V + E) BFS_인접행렬 코드/*https://www.acmicpc.net/problem/12604 5 11 21 31 42 43 4*/package ureca;import java.util.LinkedList;import java.util.Queue;import java.util.Scanner;public class BFS_인접행렬{ public static void main(String[] args) { Scanner scanner = new Scanner(System.in); StringBuilder sb = new StringBuilder(100);..
그래프란?용어:  정점(Vertex): 그래프의 노드 또는 점 간선(Edge): 정점 간의 연결. 부모-자식 개념 없음  가중치(Weight): 간선(엣지)에 할당된 값으로, 주로 두 노드(정점) 간의 관계의 강도, 비용, 거리 등을 나타냄 차수(Degree): 정점에 연결된 간선의 수 진입 차수: 방향 그래프에서 특정 정점으로 들어오는 간선의 수 진출 차수: 방향 그래프에서 특정 정점에서 나가는 간선의 수 경로(Path): 그래프의 두 정점 간에 존재하는 간선의 연속 사이클(Cycle): 시작 정점에서 출발하여 다시 시작 정점으로 돌아오는 경로. 트리와 가장 큰 차이 연결 그래프: 모든 정점이 서로 연결된 그래프 포화그래프: V 개의 정점을 가지는그래프는 최대 V *(V–1)/ 2 간선이 가능 예> 4..
비선형 자료구조란?정의: 비선형 자료 구조는 데이터가 선형적으로 배치되지 않고,계층적 또는 비계층적으로 연결된 구조필요성: 복잡한 관계를 표현하고, 효율적인 데이터 검색 및 관리 가능종류: 트리, 그래프  트리 ⭐⭐⭐ 용어 ⭐⭐⭐ 노드: 데이터의 단위(정점) 루트: 트리의 최상위 노드(첫 노드) 리프: 자식 노드가 없는 노드(끝 노드) 서브트리: 특정 노드를 루트로 하는 하위 트리 높이: 트리의 루트에서 가장 깊은 리프까지의 경로 길이(전체 깊이) 깊이: 특정 노드가 루트에서 얼마나 떨어져 있는지를 나타냅니다 간선: 부모 노드와 자식 노드를 연결,트리는 사이클이 없고, 항상 연결되어 있어야 함. 노드 수가 n이면 간선의 수는 항상 n-1 예시: 1. 파일 시스템: 컴퓨터의 파일 시스템은 트리 구조로 표현..
오늘 내용은 달달 외우기 ⭐   1) 일반순열 (순서 o, 중복 x, O(n!) ) package 순조부;import java.util.Arrays;public class 주사위_일반순열 { static int totalCnt; //완성된 순열의 수 static int n;//주사위 던지는 횟수 static int[]  results;//순열 결과를 저장할 배열 static boolean[] isSelected;//중복을 피하기 위해 첫 판에서 어떤 수를 뽑았는지 마크해 놓을 배열 public static void main(String[] args) { n=2; //2회 results=new int[n]; isSelected=new boolean[7];//0번 index는 쓰지 않고 1~6번 in..
알고리즘- 문제를 해결하기 위해 수행해야 하는 절차나 방법 APS (Algorithm Problem Solving)알고리즘 문제 풀이 알고리즘의 필요성예를 들어, 1부터 100까지의 합을 구하는 문제를 생각해 보자문제를 푸는 방식에 따라 작업량이나 소요시간 등이 달라질 수 있다 고려 사항1) 정확성 : 얼마나 정확하게 동작하는가2) 작업량 : 얼마나 적은 연산으로 원하는 결과를 얻어내는가3) 메모리 사용량 : 얼마나 적은 메모리를 사용하는가4) 단순성 : 다른 사람이 이해하기 쉬운가5) 최적성 : 더 이상 개선할 여지없이 최적화되었는가 알고리즘을 표현하는 두 가지 방법1) 의사코드 2)순서도시간복잡도 알고리즘의 효율성을 평가하는 지표중 하나실제 수행 시간이나 실행되는 명령문의 개수를 계산 빅오 표기법- ..
코딩하세현
'💡 URECA/🗒️ 스터디 노트' 카테고리의 글 목록 (4 Page)