분류 전체보기 147

[자료구조 기초] 리스트, 선형 리스트, 단순 연결리스트, Linear List, Linked List

위의 그림은 자료구조의 범주이다. 메인 글을 보고 싶다면 아래 링크를 참고하길 바란다 [자료구조] - [자료구조 기초] 자료구조의 개념, 추상 자료형, 알고리즘 성능 분석 [자료구조 기초] 자료구조의 개념, 추상자료형, 알고리즘 성능 분석 데브옵스 엔지니어로 일을 하고 있지만 그래도 계속적으로 알고리즘이나 자료구조에 대한 부분은 항상 부족했다. 그래서 운영체제, 자료구조 등 정말 fundamental 한 공부부터 다시 시작해 보려고 buildgoodhabit.tistory.com 리스트 의미적으로 관련이 있는 데이터의 집합, 목록 배열이나 연결리스트를 사용해서 구현 선형 리스트 Linear List 데이터가 연속되는 메모리에 저장 / 배열이나 문자열을 말함 장점 index를 통해 해당 위치에 직접 접근할..

자료구조 2021.04.13

[자료구조 기초] structure, 구조체

이번 포스팅은 구조체에 대해 알아보고자 한다. 배열과 다른 구조체의 가장 큰 특징은 배열은 같은 데이터 타입만 저장할 수 있지만 구조체는 서로 다른 데이터 타입을 갖는 여러 요소들을 하나의 묶음으로 표현이 가능하다는 것이다. 각 요소가 각각의 타입과 변수 이름을 갖는다 구조체 선언방법 1) 구조체 정의와 변수로 선언 struct Person{ char name[10]; int age; float salary; }; struct Person person1; 2) 정의와 동시에 선언 struct Person{ char name[10]; int age; float salary; }person1; 3) 구조체 이름 생략 struct{ char name[10]; int age; float salary; }pers..

자료구조 2021.04.13

[ 자료구초 기초] Array, 배열

배열에 대해 알아보도록 하자 배열 인덱스와 포인터 동일한 데이터 타입의 변수 여러 개를 하나로 묶어서 관리하기 위한 자료구조이다. 메모리 상에 연속된 공간에 위치함 각각의 원소를 element 라 하며, index를 사용해서 원하는 요소로 바로 이동 c언어에서 배열은 포인터 타입으로 선언됨 #include void main(){ int a[5]; a[0]=2001; a[1]=2002; a[2]=2003; a[3]=2004; } 이를 그림으로 표현하면 다음과 같다 important!! a는 변수가 포인터 변수다. #include void main(){ short a[5] = {10,20,30,40,50}; printf("a[0] :%d\n\n",a[0]); printf("a[1]:%d\n\n",a[1]);..

자료구조 2021.04.13

[자료구조 기초] Pointer , 포인터

자료구조에서의 핵심 개념인 포인터에 대해 정리해 보자 포인터란? Variable : 프로그램에서 사용되는 값을 저장하기 위한 컴퓨터 메모리(RAM) 상의 일정 영역 Pointer : 어떤 Variable의 위치를 참조, Variable 의 address 주소 값을 저장 - 빠른 실행이 가능하다. #include void main() { int x = 2004; printf("%d\n", x); int *p; p = &x; printf("%p\n", p); // pointer의 값은 주소값이다 variable 값이 아님 printf("%p\n", &x); printf("%d\n", *p); // pointer 가 가르키는 variable 값을 출력 } 이 코드를 도식화하면 아래와 같다. p의 값은 x의 주..

자료구조 2021.04.13

[자료구조 기초] 자료구조의 개념, 추상자료형, 알고리즘 성능 분석

데브옵스 엔지니어로 일을 하고 있지만 그래도 계속적으로 알고리즘이나 자료구조에 대한 부분은 항상 부족했다. 그래서 운영체제, 자료구조 등 정말 fundamental 한 공부부터 다시 시작해 보려고 한다. 자료구조를 먼저 시작을 해보자 이번 포스팅은 자료구조의 개념, 추상자료형, 알고리즘의 성능 분석 순으로 글을 전개해보고자 한다. 자료구조의 개념 Program Definition A computer program is a collection of instructions that performs a specific task when executed by a computer. 즉, 컴퓨터에서 특정 작업을 수행하는 명령어들의 집합을 프로그램이라 한다. Software A collection of data or..

자료구조 2021.04.13

[Network] SSH

위키피디아 SSH 정의 시큐어 셸(Secure SHell, SSH)은 네트워크 상의 다른 컴퓨터에 로그인하거나 원격 시스템에서 명령을 실행하고 다른 시스템으로 파일을 복사할 수 있도록 해 주는 응용 프로그램 또는 그 프로토콜을 가리킨다. 기존의 rsh, rlogin, 텔넷 등을 대체하기 위해 설계되었으며, 강력한 인증 방법 및 안전하지 못한 네트워크에서 안전하게 통신을 할 수 있는 기능을 제공한다. 기본적으로는 22번 포트를 사용한다. SSH는 암호화 기법을 사용하기 때문에, 통신이 노출된다고 하더라도 이해할 수 없는 암호화된 문자로 보인다. 주로 서버에 통신할 떄 아래와 같은 명령어를 주로 사용했었다. 특히 AWS EC2 instance 접속 시 사용함. ssh -i abc.pem ec2-user@19..

Network 2021.04.06

[Network] 특수주소

인터넷 주소 중에서도 특수한 목적을 위해 예약된 주소 블록에 대해 알아보자. 아래 글은 네트워크 인터넷 주소에 대한 기초적인 지식을 알려주고 있으니 참고하길 바란다. [Network] - [Network] 서브 네팅 subnetting과 슈퍼 네팅 supernetting [Network] 서브네팅 subnetting 과 슈퍼네팅 supernetting 인터넷 주소의 블록을 나누거나 합치는 개념인 서브네팅과 슈퍼네팅에 대해 알아보도록 하자. 아래 링크는 네트워크 주소와 관련한 이전 글이니 참고하기 바란다. [Network] - [Network] Network Layer 와 buildgoodhabit.tistory.com [Network] - [Network] Network Layer 와 인터넷 주소 (클래..

Network 2021.04.04

[Network] 서브네팅 subnetting 과 슈퍼네팅 supernetting

인터넷 주소의 블록을 나누거나 합치는 개념인 서브 네팅과 슈퍼 네팅에 대해 알아보도록 하자. 아래 링크는 네트워크 주소와 관련한 이전 글이니 참고하기 바란다. [Network] - [Network] Network Layer 와 인터넷 주소 (클래스형, 비클 래스형) [Network] Network Layer 와 인터넷 주소 (클래스형, 비클래스형) 지난 포스팅인 OSI Layer 7에 의 하나의 레이어이자 중요한 레이어 중에 하나인 네트워크 계층의 필요성과 여기서 사용되는 IP 즉 인터넷 주소를 지정하는 방법인 클래스형 비클 래스형 방법에 대 buildgoodhabit.tistory.com Subnetting 서브 네팅이란 할당 받은 주소 블록을 더 작은 블록으로 나누는 개념이다, 보안/관리 차원에서 나..

Network 2021.04.04

Miracle Morning March 2021 : 미라클 모닝 후기

사실 이번달은 열심히 지키진 않았지만 놓지는 않으려고 노력했다. 시간이 정말 빨리빨리 가지만 그래도 3월까지 꾸준히 하나라도 하려고 해서 정말 다행이다. 미라클 모닝 하는 방법이 궁금하신 분들은 아래 글을 읽어 보기를 바란다. [Build Good Habit/Miracle Morning] - Miracle Morning 미라클 모닝 시작하기 Miracle Morning 미라클 모닝 시작하기 최근 기사에서 코로나로 인해 자신을 돌아보는 시간이 많아지면서 미라클 모닝을 시작하는 사람들이 많아졌다고 한다. 나도 처음에 돌돌 콩이라는 유투버를 통해 이 미라클 모닝에 대해 알게 buildgoodhabit.tistory.com [Build Good Habit/Miracle Morning] - Miracle Morn..