일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | |||||
3 | 4 | 5 | 6 | 7 | 8 | 9 |
10 | 11 | 12 | 13 | 14 | 15 | 16 |
17 | 18 | 19 | 20 | 21 | 22 | 23 |
24 | 25 | 26 | 27 | 28 | 29 | 30 |
- springboot
- Java
- 커밋 컨벤션
- 코딩테스트
- 체인호출
- VB
- 제작기
- 테킷
- PDFBOX
- 프로그래머스
- responsepart
- 값 타입
- spring jpa
- Git
- 스프링부트 쇼핑몰 프로젝트
- break-label
- orm
- spring
- GitFlow
- 부트캠프
- JPA
- 반복문 탈출
- 알고리즘
- querydsl
- 연관관계
- PDF병합
- Hibernate
- DOCS
- 멋쟁이사자처럼
- Visual Basic
- Today
- Total
목록CS/Data Structure (2)
섭섭한 개발일지
자바에서는 포인터라는 단어를 본 적이 없을 것이다. 포인터는 주로 C언어에서 다루는 자료구조이다. 포인터는 Low level 언어에서 사용되며 개발자가 컴퓨터의 메모리에 직접적으로 접근해서 제어할 수 있는 도구다. 조금 더 친숙하게 알아보자 int a = 10; 위 코드에서는 10을 a라는 변수에 저장을 했다. 변수의 개념을 처음 배울때로 거슬러가면 나는 변수를 상자에 비유해서 배웠었다. A라는 이름의 상자에 10을 넣는 것이다. 여기서부터 포인터를 이해하려면 자료가 저장되는 개념에 대해서 알아야한다. 예시에서 사용한 int 자료형으로 개념을 알아보자 int 자료형의 크기는 4byte 다 아래 그림과 같은 메모리 공간에 10이라는 숫자를 저장하는 것이다. 메모리 공간은 바이트마다 고유의 주소값을 가지고 ..
개념 자료구조란 데이터의 집합을 이야기한다. 각 데이터 간의 관계가 일정한 규칙에 의거하여 나열되고 자료를 처리하기 위해 체계적으로 구분하여 표현한 것이다. 자료 구조를 알아야하는 이유 - 데이터를 체계적이고 효율적으로 사용하기 위함 - 특정한 상황의 문제를 처리하는데 특화 기본적인 자료구조 7개 - Array - Stack - Queue - Linked list - Hash Table, Hash map - Graph - Tree 자료구조마다 시간 복잡도가 존재하며 효율적인 문제 해결을 위해서는 상황에 맞는 자료구조를 선택할 수 있는 능력이 필요하다. 각 자료 별로 특징을 이해한다면 문제해결 능력은 한층 좋아질 것이다. Array (배열) Array는 기본적인 데이터 구조이다. Array는 생성 시 크기..