Jun의 개발세상

Jun의 개발세상

  • 분류 전체보기 (11)
    • Project (3)
      • Trouble Shooting (0)
    • Study (7)
      • Java & OOP (0)
      • Spring (0)
      • Database (1)
      • Algorithm (5)
      • Network (0)
      • BaekJoon (1)
    • Review (1)
  • 홈
  • 태그
  • 방명록
RSS 피드
로그인
로그아웃 글쓰기 관리

Jun의 개발세상

컨텐츠 검색

태그

스택 이분탐색 자료구조 후위표기식 정규화 자바 코딩테스트 트리 알고리즘 제2정규화 중위표기식 이진탐색 제1정규화 리스트 이진트리 제3정규화 BCNF SQLD 정규형 회고

최근글

댓글

공지사항

아카이브

Study(7)

  • [알고리즘] 이진탐색 (이분탐색)

    오늘은 이진오늘은 이진탐색 (이분탐색) 에 대해 공부했던 내용을 정리해보려고 한다. 이진탐색이란?이진탐색 (이분탐색) 은 특정 데이터를 탐색하는데 있어 효율적인 방법 중 하나인 알고리즘이다.이진탐색을 수행하기 위해서는 데이터들이 정렬되어 있어야 한다. 이진탐색은 다음과 같은 순서대로 진행한다.1. 데이터 중 가운데 인덱스와, left 인덱스 (초기 값: 0) 과 right 인덱스 (초기 값: 데이터 배열의 크기 - 1) 을 지정한다.2. 고른 중앙 값 과 찾고자 하는 값을 비교한다.3-1. 2의 결과가 중앙 값 > 찾고자 하는 값인 경우 : left 인덱스를 mid 인덱스 + 1 만큼으로 수정한다.3-2. 2의 결과가 중앙 값 4. 이후 left 인덱스 값이 right 인덱스 값보다 큰 경우가 되기 전까..

    2025.01.18
  • [자료구조] 트리

    오늘은 트리에 대해 배웠던 내용들을 정리해보려고 한다. 트리란?트리는 이름처럼 나무랑 비슷하게 생긴 구조이다.쉽게 예시를 들어보면 어느 조직의 조직도처럼 되어있다고 생각하면 편하다. 위 그림은 완전이진트리이다. 위 그림을 바탕으로 기본 용어들을 살펴보자 Root Node : 부모가 없는 노드를 의미한다. 즉 맨 위에 위치한 노드를 의미한다 (그림에서는 A)트리에는 하나밖에 없다. Leaf Node : 자식이 없는 노드로 트리 맨 하단에 위치한 노드를 의미한다. (그림에서는 D ,E ,C) edge / link : 각 노드를 잇는 선을 의미한다. Parent Node : 각 서브트리에서 부모 역할(상단) 에 있는 노드를 의미한다 B D E 트리를 보면 여기서는 B가 부모노드이다. Child Node : 각..

    2025.01.14
  • [자료구조] 큐

    오늘은 큐에 대해 배웠던 내용들을 정리해보려고 한다. 큐?큐는 선입선출(FIFO) 방식을 따르는 자료구조이다. / First In First Out즉 처음 들어온 데이터가 제일 먼저 나가게 된다.스택에 PUSH 와 POP 이 있다면 큐에는 Enqueue 와 Dequeue 가 있다. 큐의 대표적인 메소드Java 에서는 기본적으로 Queue 를 제공해준다. 같이 제공되는 메소드들을 정리해보았다. add()큐에 데이터를 추가 / 실패 시 예외오류 발생 offer() 큐에 데이터를 추가 / 실패 시 false 리턴remove()큐에서 데이터를 삭제 / 실패 시 예외오류 발생poll()큐에서 데이터를 삭제 / 해당 값을 리턴 없으면 Null 리턴clear()큐의 모든 값들을 제거peek()큐에서 가장 먼저 들어간..

    2025.01.13
  • [자료구조] 스택

    오늘은 스택에 대해 배웠던 내용들을 정리해보려고 한다. 스택이란대표적인 자료구조 중 하나로 후입선출(LIFO) 방식의 자료구조이다 / Last In First Out말 그대로 가장 마지막에 넣은 요소가 가장 먼저 나오게 되는 방식이다. 스택의 대표적인 연산push()스택에 데이터 삽입pop()스택에서 데이터 꺼내기peek()가장 상단에 있는 데이터 반환empty()스택이 비었는지 안 비었는지 반환size()스택의 크기를 반환search(Object o)파라미터 객체를 찾아서 해당 인덱스(1부터 시작) 를 반환 / 없으면 -1......Java 에서 기본적으로 제공하는 Stack 메소드들이다.  후위표기식 과 중위표기식대표적으로 스택 자료구조를 배우게 되면 활용할 수 있는 주제이다. 먼저 후위표기식과 중위..

    2025.01.13
  • [백준] StringBuilder / StringTokenizer / BufferReader / BufferWriter

    오늘은 Java 로 백준 문제를 풀면서 많이 마주치게 된 내용들에 대해 정리해보려고 한다. BufferReader 와 BufferWriter 백준 문제를 풀다보면 시간제한이 걸려있는 문제들을 많이 마주하게 된다.실제로도 여러 문제들을 풀면서 시간제한을 이유로 오답처리 된 경우가 많았다. 구글을 통해 찾아보니...기존에 Scanner 를 이용하여 입력받던 문제로 인하여 시간 초과가 발생하는 경우가 있었다. 이런 문제를 해결하기 위해서는 BufferReader 와 BufferWriter 를 사용해야 한다.먼저, 위 두개의 원리는 쉽게 말하면 바로바로 입출력을 하는 것이 아니라,네트워크에서처럼 버퍼에 입출력들을 저장해두고 가득 찬 경우 혹은 개행 문자의 경우 버퍼에 있는 내용들을 입출력한다.BufferedRe..

    2025.01.13
  • [자료구조] 리스트

    오늘은 자료구조의 기본 내용 중 하나인 리스트에 대해 정리해보려고 한다. 리스트란?리스트는 쉽게 말하면 기차처럼 요소와 요소가 연결되어 있는 것을 말한다.이때 가장 처음에 있는 요소(노드)는 Head, 가장 마지막은 Tail 라고 부른다.노드는 안에 data 와 다음 노드의 위치를 가지고 있는 포인터로 구성된다. 배열 vs 리스트 ?리스트는 배열과 비슷하지만, 배열과 다르게 각 요소를 추가 / 삽입 / 삭제 할 때 유리하다는 장점이 있다.배열의 경우에는 배열 선언 시 크기도 같이 선언해주어야 하지만, 리스트는 그럴 필요가 없다.하지만, 배열과 다르게 리스트에서는 각 요소에 접근하는데 시간이 오래 걸리므로 요소의 변경이 많은 경우 유리하게 사용할 수 있다. 리스트의 종류?리스트의 종류는 크게 단순연결리스트..

    2025.01.12
  • [데이터베이스] 정규화에 대해서 알아보자

    데이터베이스 정규화에는 여러 과정이 있지만,오늘은 학부 수준에서 배운 제1 정규형부터 BCNF 형까지 정리해보려고 한다.  ✔  정규화란? 데이터베이스를 설계하다 보면, 여러 이상현상들이 발생할 수 있다. 설계상 문제로 인해 데이터를 삽입할 때 불필요한 데이터를 같이 삽입해야 한다거나혹은 중복된 튜플들이 있는 경우, 데이터를 변경하였을 때 일부만 변경되는 경우혹은 설계상 문제로 인해 데이터 삭제 시 필요한 데이터도 같이 삭제되는 경우가 발생한다. 이러한 이상현상들이 발생하지 않도록 데이터베이스를 설계하는 과정을 의미한다.  ✔  정규화?  정규형? 정규화에 대해 공부하면 등장하는 개념은 바로 정규형이다.쉽게 말하면 정규화를 통해 나온 결과가 정규형이다. 제1정규화 후 -> 제1정규형제2정규화 후 -> 제..

    2024.12.30
이전
1
다음
GitHub
© EverJun2

티스토리툴바