분류 전체보기

    [정렬] 퀵 정렬(Quick Sort)

    [정렬] 퀵 정렬(Quick Sort)

    ☆ 공부한 내용을 정리한 내용입니다. 잘못된 부분이 있으면 고정 위해 댓글 부탁드립니다. ■ 퀵 정렬 원리 ) 중심점(Pivot Point)을 임의로 고른 후 이 중심점보다 작은 수를 한 쪽으로 분류하고, 큰 수들은 다른 쪽으로 분류하여 정렬하는 방법 * 분할과 정복 - 중앙값 정렬 방식을 확장하여 개발한 방식. - 평균 정렬 결과가 필요할 때 사용하는 것이 좋다. - 퀵 정렬은 멀리 있는 값을 서로 비교하고 교환하기 때문에 안정성은 떨어진다. - 시간 복잡도 O(n log n) ※ 피벗을 중간 또는 마지막을 잡는 이유 : - 피벗은 첫번째, 중간, 마지막 인덱스나 랜덤으로 선정 가능하다. - 무엇을 피벗으로 잡느냐에 따라 처리 시간이 달라진다. - 피벗 값이 중간 크기일 수록 더 균등하게 리스트를 분할..

    [Git] Git에 대한 학습 코스

    ■ Git 학습 코스 https://codewithmosh.com/p/the-ultimate-git-course The Ultimate Git Course Everything you need to know to use Git & GitHub to work effectively as a team codewithmosh.com - Code With Mosh 사이트에서 Git학습을 할 수 있는 걸 보았다. - 지금 당장은 시간이 부족해서 배우는 걸 킵하고 있는데, 이 강의를 한 번 들어보아야지...

    [객체지향프로그램] 응집도와 결합도

    ■ 응집도와 결합도 https://medium.com/@jang.wangsu/%EC%84%A4%EA%B3%84-%EC%9A%A9%EC%96%B4-%EC%9D%91%EC%A7%91%EB%8F%84%EC%99%80-%EA%B2%B0%ED%95%A9%EB%8F%84-b5e2b7b210ff [설계 용어] 응집도와 결합도 High Cohesion, Low Coupling, 응집도와 결합도 라는 설계관련 용어는 프로그래밍에 익숙하지 않은 사람들에게는 쉽게 익숙해지기가 처음에는 어려울 것 같아요. medium.com - 자바 스터디 그룹에서 매일 배운 내용을 돌아가며 요약하고 발표하고 있다. - 최근 인터페이스를 다루었었는데, 그 때 응집도와 결합도에 대한 이야기가 나왔다. 정확히 무슨 말인지 이해가 가지 않았는데,..

    [네트워크] 실제로 컴퓨터끼리는 IP주소를 사용해 데이터를 주고받는다

    [네트워크] 실제로 컴퓨터끼리는 IP주소를 사용해 데이터를 주고받는다

    ■ 실제로 컴퓨터끼리는 IP주소를 사용해 데이터를 주고받는다 ※ 출처 : 따라하면서 배우는 IT https://www.youtube.com/watch?v=s5kIGnaNFvM&list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi&index=6 ■ 요약 1. 3계층의 기능 - 3계층에서 하는 일 : 서로 다른 네트워크 대역 곧, LAN과 LAN을 연결시켜준다(LAN+LAN = WAN) - 3계층에서 쓰는 주소 : IP 주소 - 3계층 프로토콜 : 더보기 1) ARP 2) IPv4 - 현재 IPv6로 넘어가는 중이다. 3) ICMP 2. 일반적인 IP 주소 (4byte, 10진수) 255.255.255.255 *하나의 필드당 0~255까지 사용가능 - Classful - Classless ..

    [네트워크] 가까이 있는 컴퓨터끼리는 이렇게 데이터를 주고받는다

    [네트워크] 가까이 있는 컴퓨터끼리는 이렇게 데이터를 주고받는다

    ■ 가까이 있는 컴퓨터끼리는 이렇게 데이터를 주고받는다 https://www.youtube.com/watch?v=HkiOygWMARs&list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi&index=5 ■ 요약 1. 2계층에서 하는 일 - 2계층의 기능 : 오류 제어, 흐름 제어 - 2계층의 네트워크 크기 : 하나의 네트워크 대역 (LAN)에서만 통신할 때 사용 : 다른 네트워크와 통신할 때는 3계층이 도와주어야 한다. 2. 2계층에서 사용하는 주소 - MAC주소 (=물리적인 주소) 3. 2계층 프로토콜 - Ethernet 프로토콜 1) Destination Address : 목적지 MAC주소 6 byte 2) Source Address : 보내는 MAC주소 6byte 3) Ethern..

    [네트워크] 네트워크의 기준! 네트워크 모델

    [네트워크] 네트워크의 기준! 네트워크 모델

    ■ 네트워크의 기준! 네트워크 모델 https://www.youtube.com/watch?v=y9nlT52SAcg&list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi&index=4 ■ 요약 1. 네트워크 계층 모델에는 TCP/IP와 OSI 7Layers가 있다. 더보기 2. OSI 7계층 상세 구조 더보기 3. 패킷이란 - 데이터의 형식화된 블록 - 여러 프로토콜들로 캡슐화되어 있다. - 캡슐화 방식 : [헤터 [헤더 [페이로드] (푸터) ] (푸터) ] *상위 -> 하위 순으로 캡슐화 - 디캡슐화 : 패킷을 하나씩 뜯는 방식 *하위 -> 상위 순으로 디캡슐화 더보기 ▲ 보낼 때 : 프로토콜을 붙일 때, OSI 7 계층 기준으로 상위 -> 하위 순으로 붙인다. ▲ 받을 때 : 하위 -..

    [네트워크] 네트워크란 무엇인가?

    [네트워크] 네트워크란 무엇인가?

    ■ 네트워크란 무엇인가? ※ 출처 : 따라하면서 배우는 IT https://www.youtube.com/watch?v=Av9UFzl_wis&list=PL0d8NnikouEWcF1jJueLdjRIC4HsUlULi ■ 요약 1. 네트워크란, - 노드들이 데이터를 공유할 수 있게하는 디지털 전기통신망의 하나이다. - 분산되어 있는 컴퓨터를 통신망으로 연결한 것 더보기 2. 인터넷이란, - 전세계를 연결하는 가장 큰 네트워크 - WWW는 인터넷을 통해 웹과 관련된 데이터를 공유하는 것으로 인터넷과 다른 개념이다. 더보기 3. 네트워크는 크기/연결형태에 따라 여러 개의 분류로 나누어진다. 1) 크기 : LAN / WAN / MAN / 기타 ▶ LAN(Local Area Network) : 근거리 통신망. 가까운 ..

    [자료구조] 큐(Queue)

    [자료구조] 큐(Queue)

    ■ 큐란? - FIFO (First in First Out) 방식으로 데이터를 입출력 - 현실 세계의 큐 예 ) 티켓 판매기에서 대기하고 있는 사람들, 일방통행 도로의 차동자들, 인쇄기의 인쇄 순서, CPU의 테스크 스케줄링 - 큐의 한계 : 1) front부터 삭제되며, 삭제된 공간을 다시는 사용하지 못한다. 2) (배열을 사용할 경우) 큐의 크기가 정해지기 때문에 rear가 더 움직이지 못한다. (-> 이 부분은 자바에서는 동적관리 객체인 LinkedList로 해결했다) - 큐의 한계를 보완 : 원형 큐, 우선순위 큐 ■ 큐의 내부 구조 - 유투브의 영상에 나와있는 튜토리얼에 따라 큐를 구현해보았다. https://www.youtube.com/watch?v=W3jNbNGyjMs&list=PLjSkJd..

    [DATABASE] PL/SQL 프로시져

    [DATABASE] PL/SQL 프로시져

    ■ 프로시저란? - 어떤 업무를 수행하기 위한 절차로 자주 쓰는 명령을 절차적으로 지정해둔 형태 ■ 함수와 프로시져의 차이점 https://mjn5027.tistory.com/47 [ Oracle ] 프로시저와 함수의 차이 오라클을 사용하다보면 자주 접하게 되는 프로시저와 함수. ​ 이 둘의 정의와 차이점에 대해 알아보자. 프로시저(Procedure)란? 넓은 의미로는 어떤 업무를 수행하기 위한 절차를 뜻한다. ​ 예를 mjn5027.tistory.com ■ 프로시져 코딩 예시 -- 수정 create or replace procedure book_update(v_name IN varchar2, v_price IN number, v_idx IN number) is begin UPDATE book SET n..

    [이클립스] 프로젝트의 JDK 버전 변경하기

    [이클립스] 프로젝트의 JDK 버전 변경하기

    ■ 컴파일러 버전 바꾸기 - [프로젝트] - 오른쪽마우스 - [Properties] - [Java Compiler] - 체크를 풀어주고, 버전을 변경한다. ■ Facet도 같이 바꿔야한다.