kjsorolcl의 등록된 링크

 kjsorolcl로 등록된 네이버 블로그 포스트 수는 42건입니다.

핸드온 머신러닝 1강 정리 [내부링크]

슬라이드 주소 - http://bit.ly/homl2-slide 깃허브 - http://bit.ly/homl2-git 아무 것도 설치하지 않고 ...

자연수의 분할, 집합의 분할 정리 [내부링크]

자연수의 분할 분할 - 합으로 표현하라는 의미, ex : 6 = 3 + 3 같은 물건(구슬, 사탕, 연필 등)을 ...

고3 통계와확률 - 조합 정리 [내부링크]

조합 - 기호는 nCr (순열은 nPr), 10명 중 대표 2명을 뽑을 경우 10C2 - 서로 다른 n개 중 중복없이 r개...

고3 확률과통계 - 순열 정리 [내부링크]

경우의 수 (1) 합의 법칙 - 두 사건 A, B가 동시에 일어나지 않을 때, 사건 A와 사건 B가 일어아는 경...

통계학 1강 모집단과 표본 정리 [내부링크]

통계학(Statistics) 관심 또는 연구의 대상인 모집단의 특성을 파악하기 위해 모집단으로부터 일부의 자료...

13강 데이터 과학과 빅데이터 정리 [내부링크]

데이터 과학 - 빅데이터는 그 자체가 엄청난 양의 데이터를 의미, 사물 인터넷은 사물들로 구성된 인터넷, ...

12강 데이터베이스 응용 기술 정리 [내부링크]

객체지향 데이터 모델 - 객체와 객체 식별자, 속성과 메서드, 클래스, 클래스 계층 및 상속, 복합 객체 등...

11강 보안과 권한 관리 정리 [내부링크]

보안 - 조직에서 허가한 사용자만 데이터베이스에 접근할 수 있도록 통제 - 일반적으로 세 가지 유형으로 ...

10강 회복과 병행 제어 정리 [내부링크]

트랜잭션(transaction) - 하나의 작업을 수행하는 데 필요한 데이터베이스의 연산들을 모아놓은 것, 논리적...

9강 정규화 정리 [내부링크]

정규화(normalization) - 데이터베이스의 설계 잘못으로 인한 불필요한 데이터 중복 발생으로 릴레이션에 ...

알고리즘 3강 점화식과 알고리즘 복잡도 분석 정리 [내부링크]

점화식 - 어떤 함수를 자신과 똑같은 함수를 이용해 나타내는 것 등차수열, 피보나치 수열, n! 재귀함수 복잡도 구하는데 유용 반복 대치 - 더 작은 문제에 대한 함수로 반복해서 대치하며 계산하는 방법 추정 후 증명 - 식의 모양을 보고 점근적 복잡도를 추정한 다음 그것이 옳음을 귀납적으로 증명 마스터 정리 - 형식에 맞는 점화식의 복잡도를 바로 알 수 있는 방법 http://www.kmooc.kr/courses/course-v1:HOSEO+HOSEOSW01+2021_12/course/

알고리즘 4강 정렬 정리 [내부링크]

선택정렬 - n의 크기의 제곱에 비례하는 시간 복잡도 1. 배열에서 가장 큰 원소를 맨 뒤로 이동시킨다. 2. 맨 뒤는 가장 큰 원소가 위치하니 신경쓰지 않는다. 3. 맨 뒤에서 하나씩 앞으로 이동하면서 같은 작업 반복. 버블정렬 - n의 크기의 제곱에 비례하는 시간 복잡도 1. 배열에서 가장 큰 원소를 맨 뒤로 이동시킨다. 2.제일 큰 원소를 옮기는 방법이 다르다. 3. 가장 큰 원소의 위치를 찾는 것이 아니라 이웃한 숫자를 비교하여 순서가 제대로 되어있지 않으면 바로 바꿈. 선택정렬 - n의 크기의 제곱에 비례하는 시간 복잡도 1. 이미 정렬된 배열에 하나의 원소를 더 더하여 정렬된 i+1개의 배열을 만드는 과정을 반복 2. 선택, 버블 정렬.......

데이터분석 1강 준비 과정 정리 [내부링크]

데이터 분석을 위한 환경 목록 1. 주피터노트북 - 데이터분석, 시각화, 머신러닝 등의 파이썬 프로그램 개발에 적합 - 다른 IDE에 비해 가벼움 - 필요한 라이브러리 별도 설치 필요 2. 아나콘다 - 주피터노트북 내장(무거움) - 기본적인 데이터분석 및 시각화 라이브러리 포함 - 가상환경을 설정하여 버전이 다른 다수의 프로젝트를 관리할 수 있음 - 사용자 환경에 따라 라비르러리 설치시 오류 발생할 수 있음 3. 코랩 - 클라우드 기반의 주피터노트북 환경(RAM, 디스크, GPU, TPU 제공) - 컴퓨터 사양에 관계없이 크롬 브라우저 만으로 작업 가능 - 기본적인 데이터분석 및 시각화 라이브러리 포함 - 소스관리 불편, 파일 바운딩 불편, 그래프.......

데이터베이스 개론 1강 정리 [내부링크]

정보와 데이터 정보 - 데이터를 의사 결정에 유용하게 활용할 수 있도록 처리하여 체계적으로 조직한 결과물 데이터 - 현실 세계에서 단순히 관찰하거나 측정하여 수집한 사실(fact)이나 값(value) ex : 목장에서 방금 짠 원유가 데이터, 공장에서 가공하여 팩에 담는 우유가 정보 데이터에서 정보를 추출하는 과정 또는 방법 - 정보 처리(infomation processing), 데이터를 상황에 맞게 분석하거나 해석하여 데이터 간의 의미 관계 파악 정보 시스템과 데이터베이스 정보 시스템(Infomation System) - 조직 운영에 필요한 데이터를 수집하여 저장해두었다가 의사 결정이 필요할 때 처리하여 유용한 정보를 만들어주는 수단이고 정보 시스템 안에.......

2강 데이터베이스 관리 시스템 정리 [내부링크]

과거엔 데이터베이스 대신 파일 시스템으로 데이터를 관리했으나 중복 방지, 데이터 무결성 유지 등등 응용프로그램 종속적으로 인한 문제들이 많았음. 동시 공유, 보안, 회복 등의 복잡한 기능을 제공해주는 데이터베이스 관리 시스템이 대안으로 생겨남. DBMS(DataBase Management System, 데이터베이스 관리 시스템) 주요 기능 세 가지 정의 기능 - 데이터베이스 구조를 정의하거나 수정 조작 기능 - 사용자 요구에 따라 삽입, 삭제, 수정, 검색하는 연산을 효율적 처리 제어 기능 - 조작 중에도 일관된 내용으로 데이터 무결성을 유지하게 하고 장애가 발생해도 회복이 가능하도록 제어, 권한이 있는 사용자에게만 데이터 접근을 허용하여 보.......

3강 데이터베이스 시스템 정리 [내부링크]

데이터베이스 시스템 - 데이터베이스에 데이터를 저장하고, 저장한 데이터를 관리하여 조직에 필요한 정보를 생성해주는 시스템 데이터베이스, 데이터베이스 관리 시스템과는 다른 용어 스키마(schema) - 데이터베이스에 저장되는 데이터 구조와 제약조건을 정의한 것 ex - 고객 테이블의 고객번호(INT), 이름(CHAR(10)), 나이(INT), 주소(CHAR(50)) 3단계 데이터베이스 구조 - 개별 사용자 관점의 외부 -조직 전체 관점의 개념 - 믈리적인 저장 장치 관점의 내부 단계 데이터 독립성 - 세 가지 스키마는 데이터베이스에 대한 관점이 다를 뿐 모두 같은 데이터베스를 표현 실제 데이터는 물리적 저장 장치에 저장된 데이터베이스에만 존재하므로.......

4강 데이터 모델링 정리 [내부링크]

데이터 모델링 - 현실 세계에 존재하는 데이터를 컴퓨터 세계의 데이터베이스로 옮기는 변환 과정, 추상화 필요 - 개념적 모델링, 논리적 모델링을 합쳐서 보통 데이터 모델링이라 부름. - 데이터 구조, 연산, 제약조건으로 구성 개체-관계 모델 - 피터 첸이 1976년에 제안, 개체(entity)와 개체 간의 관계를 이용해 현실 세계를 개념적 구조로 표현하는 방법 - 개체-관계 모델을 이용해 개념적으로 모델링하여 그림으로 표현한 것이 개체-관계 다이어그램 또는 E-R 다이어그램 개체 - 현실 세계에서 조직을 운영하는 데 꼭 필요한 사람이나 사물과 같이 구별되는 모든 것을 의미 ex : 서점에서 고객과 책 모두 개체 - 개념적으로 존재하는 것도.......

5강 관계 데이터 모델 정리 [내부링크]

관계 데이터 모델에서는 하나의 개체에 관한 데이터를 릴레이션(relation) 하나에 담아 데이터베이스 저장 릴레이션과 관련된 용어들 속성 - 릴레이션의 열을 속성 또는 애트리뷰트(attribute)라 부름 - 고객 릴레이션에는 고객아이디, 고객이름, 나이, 등급, 직업, 적립금이라는 속성이 존재 - 파일 시스템에서는 파일의 필드에 대응하는 개념 튜플(tuple) - 릴레이션의 행 - 고객 릴레이션에서는 고객 한명에 대한 실제 속성 값 6개를 모아놓은 것으로, 고객 개체의 인스턴스, 고객 4명의 대이터를 저장하고 있다면 고객 릴레이션은 4개의 튜플 또는 4개의 고객 개체 인스턴스가 존재 도메인(domain) - 속성 하나가 가질 수 있는 모든 값의 집.......

6강 관계 데이터 연산 정리 [내부링크]

관계 데이터 연산(relationship data operation) - 원하는 데이터를 얻기 위해 릴레이션에 필요한 처리 요구를 수행하는 것, 데이터 언어의 역할 - 관계 대수와 관계 해석이 대표적 - 관계 대수(relational algebra) : 원하는 결과를 얻기 위해 데이터 처리 과정을 순서대로 기술하는 절차 언어(procedural language) - 관계 해석(relational calculus) : 원하는 결과를 얻기 위해 처리를 원하는 데이터가 무엇인지만 기술하는 비절차 언어(nonprocedural language) - 데이터를 처리하는 기능과 처리를 요구하는 표현력은 관계 대수와 관계 해석이 동일 대이터에 대한 처리 요구 - 질의(query) 관계 대수에 속하는 대표적인 연산자 8개는 특성에.......

7강 데이터베이스 언어 SQL 정리 [내부링크]

SQL - 관계 데이터베이스를 위한 표준 질의어, 비절차적 데이터 언어 - 1974년에 개발된 IBM 연구소의 연구용 관계 데이터베이스 관리 시스템인 SYSTEM R을 위한 언어 SEQUEL(Structured English QUEry Language)에서 유래 - 1986년 미국 표준 연구소인 ANSI와 국제 표준화 기구인 ISO에서 SQL을 관계 데이터베이스의 표준 질의어로 채택하고 표준화 작업 진행 - 여러 개정을 거치고 2011년 SQL-2011 발표 - 기능에 따라 데이터 정의어(DDL), 데이터 조작어(DML), 데이터 제어어(DCL)로 분류 데이터 정의어 - 테이블을 생성하고 변경, 제거하는 기능 제공 데이터 조작어 - 테이블에 새 데이터를 삽입하거나 테이블에 저장된 데이터를 수정, 삭제.......

8강 데이터베이스 설계 정리 [내부링크]

1단계 요구사항 분석 - 구성원들이 데이터베이스 사용하는 용도 파악 - 필요한 데이터의 종류, 여러 방법 같은 다양한 요구 사항 수집, 요구 사항 명세서로 작성 2단계 개념적 설계 - 명세서를 바탕으로 사용자의 요구 사항을 개념적 데이터 모델을 이용해 표현 - 중요한 데이터 요소와 데이터 요소 간의 관계인 E-R 모델을 많이 사용, E - R 다이어그램으로 표현 - 요구 사항 명세서를 개념적 데이터 모델로 변환하는 과정을 개념적 모델링이라 함 - E - R 다이어그램과 같이 개념적 데이터 모델로 표현한 결과물을 개념적 구조 또는 개념적 스키마라고 함 - 개체와 속성을 추출해야 하는데 개체란 현실 세계에서 어떤 조직을 운영하는 데 꼭 필.......

6장 스택의 이해와 ADT 정리 [내부링크]

스택(Stack) 나중에 들어간 것이 먼저 나오는 구조 후입선출 방식의 구조, 영어로는 LIFO(Last-In, First-Out) 구조라 불린다. 스택을 대표하는 넣고, 꺼내고, 들여다 보는 연산을 push, pop, peek이라 한다. 스택을 배열 기반으로 구현할 지, 연결리스트 기반으로 구현할 지 선택 필요. 스택은 상황이 그리 다양하지 않아서 데이터를 추가하는 상황과 꺼내는 상황만 주로 생각하면 된다. 스택의 배열 기반 구현 출력 결과 데이터 역순 출력으로 스택의 제일 중요한 목적을 보여줌. 스택의 연결리스트 기반 구현 출력 결과 계산기 프로그램 구현 자료구조에서 스택의 활용과 관련해서 빠지지 않고 등장하는 사례가 계산기 프로그램. 만약 (3+4) *.......

자료구조 7강 큐의 이해 정리 [내부링크]

큐는 스택과 함께 언급되고 비교되는 자료구조. 스택은 먼저 들어간 데이터가 나중에 나오는 구조인 반면, 큐는 먼저 들어간 데이터가 먼저 나오는 구조. 큐의 이해 우리는 하루에도 몇 번씩 줄을 선다. 대중교통을 이용할 때에도, 패스트푸드점에서 주문을 할 때에도 줄을 서는 이유는 먼저 온 사람이 먼저 서비스를 받도록 하기 위함. 큐는 '선입선출' 구조의 자료구조 큐는 FIFO(First-In, First-Out) 구조의 자료구조 뒤로 넣고 앞으로 빼는 구조 큐의 ADT 큐의 핵심은 두 가지 연산 enqueue - 큐에 데이터를 넣는 연산 dequeue - 큐에서 데이터를 꺼내는 연산 큐의 배열 기반 구현 원형 큐 구현 출력 결과 큐의 연결리스트 기반 구.......

자료구조 8강 트리의 개요 정리 [내부링크]

트리(Tree)의 접근 고급 자료구조로 분류되는 트리는 계층적 관계(Hierarchical Relationship)를 표현하는 자료구조. 비선형 자료구조. 가지를 늘려가며 뻗어간다는 모양새에 근거하여 '트리'라 명명. 트리의 예시 컴퓨터의 디렉터리 구조 집안의 족보나 기업 및 정부의 조직도 트리의 기본적인 용어 노드(node) - 트리의 구성요소 간선(edge) - 노드와 노드를 연결하는 연결선 루트 노드(root node) - 트리 구조에서 최상위에 존재하는 A와 같은 노드 단일 노드(terminal node) - 아래로 또 다른 노드가 연결되어 있지 않은 노드, 잎사귀 노드라고도 불림 내부 노드(internal node) - 단일 노드를 제외한 모든 노드, 비단말 노드라고.......

자료구조 9강 우선순위 큐의 이해 정리 [내부링크]

우선순위 큐 큐는 먼저 들어간 데이터가 먼저 나오나, 우선순위 큐는 들어간 순서에 상관없이 우선순위가 높은 데이터가 먼저 나온다. 응급실로 비유하면 촌각을 다투며, 생명이 위급한 환자 또는 내일까지 기다리기에는 무리인 환자가 해당됨. 우선순위 정보는 거의 정수로 표현되나, 꼭 정수만 사용되지는 않음, 정수로 표현할 때는 꼭 정수의 값이 클수록 우선순위가 높지 않음. 우선순위는 같을 수 있음. 우선순위 구현 방식 배열, 연결리스트, 힙(Heap)이 존재. 배열을 이용한 우선순위 큐는 구현은 쉬우나, 데이터를 삽입 및 삭제하는 과정에서 데이터를 한 칸씩 뒤로 밀거나 한 칸씩 앞으로 당기는 연산을 수반하기 때문에 비효율적이다. .......

자료구조 10강 정렬 정리 [내부링크]

버블 정렬(Bubble Sort) 인접한 두 개의 데이터를 비교해가면서 정렬을 진행하는 방식 정렬순서상 위치가 바뀌어야 하면 두 데이터의 위치를 바꿔나간다. 오름차순으로 정렬할 경우엔 정렬의 우선순위가 가장 낮은, 제일 큰 값을 맨 뒤로 보낸다. 선택 정렬(Selection Sort) 정렬순서에 맞게 하나씩 선택해서 옮기고, 그러면서 정렬이 되게 하는 알고리즘 정렬순서상 가장 앞서는 것을 선택해서 가장 왼쪽으로 이동시키고, 원래 그 자리에 있던 데이터는 빈 자리에 가져다 놓는다. 삽입 정렬(Insertion Sort) 정렬이 완료된 영역의 다음에 위치한 데이터가 그 다음 정렬대상 삽입할 위치를 발견하고 데이터를 한 칸씩 뒤로 밀수도 있지만, 데이터.......

자료구조 11강 탐색의 이해와 보간 탐색 정리 [내부링크]

탐색의 이해 탐색은 알고리즘보다 자료구조에 더 가까운 주제 효율적인 탐색을 위해서는 어떻게 찾을까 만을 고민하기보다는 효율적인 탐색을 위한 저장방법이 무엇일까가 더 우선적인 고민이기 때문. 효율적인 탐색이 가능한 대표적인 저장방법은 트리이고 때문에 탐색에 관한 이야기는 대부분 트리의 연장선상. 보간 탐색 이진 탐색의 비효율성을 개선시킨 탐색법. 중앙에서 탐색을 시작하지 않고 탐색대상이 앞쪽에 위치해 있으면 앞쪽에서 탐색을 시작. 탐색에서 사용할 탐색 키(Search Key)와 탐색 데이터(Seach Data) "사원이 7인 직원의 정보를 찾는다" 라는 예시를 들면 사번이 탐색 키, 직원의 정보가 탐색 데이터. 탐색 키는.......

자료구조 12강 AVL 트리 정리 [내부링크]

이진 탐색 트리 문제점 이진 탐색 트리의 탐색 연산은 O(log₂n)의 시간 복잡도 - 트리의 높이를 하나씩 더해갈수록 추가할 수 있는 노드도 두 배씩 증가. 저장 순서에 따라 탐색의 성능에 큰 차이를 보이는 것이 이진 탐색 트리의 단점. 이러한 단점을 해결한 트리 - 균형 잡힌 이진 트리 1. AVL 트리 2. 2-3 트리 3. 2-3-4 트리 4. Red - Black 트리 5. B 트리 AVL 트리 노드가 추가될 때, 그리고 삭제될 때 트리의 균형상태를 파악해서 스스로 그 구조를 변경하여 균형을 잡는 트리. 균형 인수 = 왼쪽 서브 트리의 높이 - 오른쪽 서브 트리의 높이 출력 결과 참조 서적 - 윤성우의 열혈 자료구조

자료구조 13강 해쉬 테이블 정리 [내부링크]

테이블(Table) 탐색 연산은 O(1)의 시간 복잡도이므로, 단번에 탐색을 수행한다고 표현이 가능하다. 저장되는 데이터는 키(key)와 값(value)이 하나의 쌍을 이룬다. '값'은 반드시 '키'가 존재해야 하며, 키는 중복 비허용. 단어가 키가 되고, 그 단어에 대한 설명 또는 내용이 값이 되는 사전(dictionary)이 테이블의 대표적인 예시. 맵(map)이라 불리기도 한다. 배열을 기반으로 하는 테이블 소스 코드 출력 결과 위 예제의 단점 1. 번호의 범위는 배열의 인덱스 값으로 사용하기에 적당하지 않다. 2. 번호의 범위를 수용할 수 있는 매우 큰 배열이 필요하다. 위 두 가지의 문제를 동시 해결해주는 것이 '해쉬 함수&#.......

자료구조 14강 그래프 정리 [내부링크]

그래프 수학자 오일러(Euler)에 의해 1736년 고안됨. 버스와 지하철의 노선도, 출발지와 목적지에 맞는 최적의 경로 등에 사용. 정점(vertex)과 정점 사이를 연결하는 간선(edge)으로 구성. 그래프를 구현하는 두 가지 방법 인접 행렬(adjacent matrix) 기반 그래프 - 정방 행렬을 활용 인접 리스트(adjacent list) 기반 그래프 - 연결 리스트를 활용 인접리스트 기반의 그래프 소스 코드 출력 결괴 그래프의 탐색 깊이 우선 탐색(Depth First Search: DFS) 1. 여러 갈래의 길 중에 하나의 길만 파고드는 방법 2. 한 사람에게만 연락한다는 생각을 모든 사람이 동일하게 가지고 있다고 가정. 3. 연락할 사람이 없으면 자신에게 연락한 사람에게 이.......

1강 알고리즘 개요 정리 [내부링크]

"생각하는 방법을 터득한 것은 미래의 문제를 미리 해결한 것이다." 알고리즘 - 문제해결을 위한 방법을 수학적 명령이나 규칙의 집합으로 표현한 것. 1. 최소시간이라는 보장이 있어야 함 2. 다양한 방법 중에 제일 효율적인 방법을 택해야 함. 현대사회의 우리에게 필요한 건 CPU로 대신 가능한 계산 능력보다는 '생각' 사고의 확장, 생각하는 훈련 자연수 1부터 n까지의 합을 구하는 공식 1 + 2 + 3 ... + 98 + 99 + 100 n번 수행. 가우스의 공식을 쓰면? (n+1) * n / 2 1번 수행. 문재해결이란? - 입력을 받아 원하는 출력을 만들어내는 것 - 알고리즘은 문재 해결의 절차를 체계적으로 기술한 것 - 문제제시는 입력과 출.......

2강 알고리즘 설계와 분석의 기초 정리 [내부링크]

의사코드(pseudo code) 1. 프로그램에서 각 모듈이 작동하는 논리를 표현하는 언어 2. 특정 프로그래밍 언어 문법이 아님 3. 일반적인 언어로 프로그래밍 코드와 유사하게 표현 4. 주로 알고리즘의 표현이나 모델링에 사용 필요한 수학 내용 1. 시그마 2. 수학적 귀납법 3. log(lofarithm) - base를 몇 번 곱해야 n이 되는가? 지수의 반대 개념 알아두면 좋은 수학 기호 점근적 표기 입력 크기가 작으면 효율성이 별로 중요치 않고 비효율적이어도 무방. 입력의 크기가 크면 반대의 상황이 되는데 이럴 때 쓰는 분석방법이 점근적 분석. 점근적 분석 1. 변수가 커짐에 따라 함수가 증가하는 비율을 표현하는 방법 2. 무한의 개념을 간단하게 표기.......

자료구조 공부 1강 정리 [내부링크]

1-1 자료구조에 대한 기본적인 이해 첫번째 학습 목표 1. 구조체 정의 및 구조체 대상의 typedef 선언 가능 2. malloc과 free 사용을 통한 메모리 동적 할당 이해 3. 포인터 변수의 선언과 포인터 연산에 대한 거부감 없도록 함 4. 헤더파일에 대한 이해 5. #ifndef ~ #endif 이해 6. 둘 이상의 소스파일과 헤더파일에 나누어 담기 7. 재귀 함수 이해 자료구조란? 프로그램을 이루는 데이터의 표현, 저장과 데이터의 처리 중에서 '데이터의 표현, 저장'을 담당하는 것. 넓은 의미에서 보면 정수를 저장하기 위한 int형 변수와 구조체도 데이터를 표현 및 저장하는 하나의 방법으로 자료구조에 포함됨. 배열에 자료구조의 일종. 자료구.......

자료구조 2강 정리 [내부링크]

재귀함수의 기본적인 형태 재귀를 매개변수만큼 실행하는 예제 재귀함수로 구현해볼 정수 n의 팩토리얼 n! = n X (n-1) X (n-2) X (n-3) X . . . . X 2 X 1 3! = 3 X 2 X 1 5! = 5 X 4 X 3 X 2 X 1 코드 구현 피보나치 수열 0, 1, 1, 2, 3, 5, 8, 13, 21, 34, 55 .... 간단하게 정의하면 "앞의 두 수를 더해서 현재의 수를 만들어가는 수열" 수열의 n번째 값 = 수열의 n-1번째 값 + 수열의 n-2번째 값 코드 구현 호출순서를 파악하기 위한 코드 이진 탐색 알고리즘의 재귀적 구현 하노이 타워 재귀함수가 유용하게 쓰이는 대표적인 예 참고서적 : 윤성우의 열혈 자료구조

자료구조 3강 추상 자료형, 연결리스트 정리 [내부링크]

추상 자료형(ADT, Abstract Data Type) 지갑을 ADT로 정의하면? 구체적인 기능의 완성과정을 언급하지 않고, 순수하게 기능이 무엇인지를 나열한 것을 가리켜 '추상 자료형' 또는 간단히 ADT라 한다. 리스트의 이해 리스트는 곧 연결리스트인가? X 리스트는 배열 기반의 순차리스트와 동적 할당 기반의 연결리스트로 나뉜다. 리스트 자료구조는 데이터를 나란히 저장하고 중복된 데이터의 저장을 막지 않는다. 리스트 자료구조의 ADT 리스트의 ADT를 기반으로 정의된 main 함수 배열 기반의 리스트인 ArrayList 헤더파일 구현 파일 구조체 변수의 주소 값을 저장하기 위해 다음 구조체 함수들을 선언 및 정의 위 Point 구조체를 기존 리.......

자료구조 4강 연결리스트2 정리 [내부링크]

배열을 이용한 데이터 저장 예제 #include <stdio.h> int main() { int arr[10]; int readCount = 0; int readData; int i; while(1) { printf("자연수 입력: "); scanf("%d", &readData); if(readData < 1) break; arr[readCount++] = readData; } for(i=0; i<readCount; i++) printf("%d ", arr[i]); return 0; }자연수 입력: 1 자연수 입력: 2 자연수 입력: 3 자연수 입력: 4 자연수 입력: 5 자연수 입력: 6 자연수 입력: 0 1 2 3 4 5 6 배열은 메모리의 특성이 정적이어서 메모리의 길이를 변경하는 것이 불가 다음 예제를 통해 동적 메모리 구성을 파악 #include <stdio.h&gt.......

자료구조 5강 원형 연결리스트 정리 [내부링크]

단순 연결리스트를 꼭 처음부터 끝까지 스스로 구현할 수 있지 않아도 되며, ADT의 변경 및 추가로 함수의 일부를 변경하거나 추가하는 정도를 할 수 있다면 충분히 공부했다고 말할 수 있음. 원형 연결리스트 단순 연결리스트의 마지막 노드는 NULL을 가르켰지만, 이 마지막 노드가 첫 번째 노드를 가리키게 하면 그것이 '원형 연결리스트'. 단순 연결리스트처럼 머리와 꼬리를 가리키는 포인터 변수를 각각 두지 않아도, 하나의 포인터 변수만 있어도 머리 또는 꼬리에 노드를 간단히 추가할 수 있다는 것이 원형 연결리스트의 장점. 즉, 꼬리를 가리키는 포인터 변수는 tail, 머리를 가리키는 변수는 tail->next가 성립됨. 실행.......

백준코드 10871번 Node.js "X보다 작은 수" 정답 제출 [내부링크]

문제 정수 N개로 이루어진 수열 A와 정수 X가 주어진다. 이때, A에서 X보다 작은 수를 모두 출력하는 프로그램을 작성하시오. 입력 첫째 줄에 N과 X가 주어진다. (1 ≤ N, X ≤ 10,000) 둘째 줄에 수열 A를 이루는 정수 N개가 주어진다. 주어지는 정수는 모두 1보다 크거나 같고, 10,000보다 작거나 같은 정수이다. 출력 X보다 작은 수를 입력받은 순서대로 공백으로 구분해 출력한다. X보다 작은 수는 적어도 하나 존재한다. 정답 판정 코드 입력 출력 https://www.acmicpc.net/problem/10871

백준코드 1152번 Node.js "단어의 개수" 정답 제출 [내부링크]

문제 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열에는 몇 개의 단어가 있을까? 이를 구하는 프로그램을 작성하시오. 단, 한 단어가 여러 번 등장하면 등장한 횟수만큼 모두 세어야 한다. 입력 첫 줄에 영어 대소문자와 공백으로 이루어진 문자열이 주어진다. 이 문자열의 길이는 1,000,000을 넘지 않는다. 단어는 공백 한 개로 구분되며, 공백이 연속해서 나오는 경우는 없다. 또한 문자열은 공백으로 시작하거나 끝날 수 있다. 출력 첫째 줄에 단어의 개수를 출력한다. 정답 판정 코드 split 이용해서 쉽게 끝낼 수 있는 문제. 공백의 함정 때문에 원큐에 끝내진 못하고 결국 시도 세 번 해서 끝냈다..