본문 바로가기

전체보기118

C언어] 검색-선형검색 [선형검색] 1. 선형 검색(Linear Search) 이란? 선형 검색 또는 순차 검색(Sequential Search)는 모든 알고리즘 중에서 가장 기본적이면서 또한 상식적인 검색 방법이다. 테이블의 처음부터 순서대로 읽으면서 원하는 키와 비교하기를 검색에 성공하거나 아니면 테이블끝에 이를 때 까지 반복하는 것이다. HTML 삽입 미리보기할 수 없는 소스 2024. 1. 2.
C언어] 트리 [트리] 1. 트리 란? 트리(Tree)는 계층적인 구조를 나타내는 자료구조로, 노드(node)들이 간선(edge)으로 연결되어 있는 구조를 갖는다. 각 노드는 하나의 부모(parent) 노드와 여러 개의 자식(child) 노드를 가질 수 있다. 트리는 데이터를 효율적으로 조직화하고 검색하는 데 사용된다. 배열, 연결리스트, 스택, 큐 등은 모두 1차원 선형적인 구조를 가지는데 비해 트리는 2차원적인 구조를 가진다. 트리 용어 노드(Node): 트리의 기본 구성 요소로, 데이터를 저장하는 요소입니다. 각 노드는 부모와 자식 노드 간의 연결을 갖습니다. 루트 노드(Root Node): 트리의 시작점에 위치한 최상위 노드를 가리킵니다. 트리는 하나의 루트 노드만을 가집니다. 부모 노드(Parent Node).. 2024. 1. 2.
C언어] 큐 [큐] 1. 큐(Queue) 란? 큐(Queue)는 데이터를 선입선출(FIFO - First-In-First-Out)의 순서로 저장하는 자료구조이다. 큐는 주로 데이터를 임시로 저장하고 순서대로 처리해야 할 때 사용됩니다. C 언어에서 큐를 구현하기 위해서는 배열이나 연결 리스트 등을 활용할 수 있다. 큐는 주로 두 가지 주요 연산을 지원합니다: enqueue: 큐의 뒤쪽에 새로운 요소를 추가합니다. dequeue: 큐의 앞쪽에서 요소를 제거하고 반환합니다. HTML 삽입 미리보기할 수 없는 소스 정수형 큐를 배열을 이용하여 구현. 크기가 제한된 큐이기 때문에 원형 큐(circular queue)의 개념을 도입하여 배열의 끝에 도달하면 다시 처음으로 돌아가도록 구현 했다. 큐에 값을 추가하고(enqueu.. 2024. 1. 2.
C언어] RPG게임만들기-5 (사냥터 세분화) [RPG게임만들기] RPG게임만들기 사냥터 세분화 몬스터의 등장 등급으로 설정 HTML 삽입 미리보기할 수 없는 소스 2024. 1. 1.
C언어] RPG게임만들기-4 (전투 설정) [RPG게임만들기] RPG게임만들기 전투 설정 플레이어 턴&턴 방식 플레이어 먼저 무조건 공격 그다음 몬스터 공격 방식 플레이어는 선택. 그다음 몬스터는 공격 2가지 형태중 1가지 설정 전투 로직 추가 1. 공격 2. 마법 3. 도망 1.공격 = 플레이어 물리 공격력 만큼 몬스터 HP감소. 2.마법 = 플레이어 마법 공격력 만큼 몬스터 HP감소. 물리 공격 계산 공식 : 플레이어 물리공격력 - 몬스터(방어력/10) 마법 공격 계산 공식 : 플레이어 마법공격력- 몬스터(저항력/5) HTML 삽입 미리보기할 수 없는 소스 2024. 1. 1.
C언어] RPG게임만들기-3 (사냥터 설정) [RPG게임만들기] RPG게임만들기 사냥터 설정 하기 하급 사냥터(1~3) 등급 몬스터 등장 HTML 삽입 미리보기할 수 없는 소스 2024. 1. 1.
C언어] RPG게임만들기-2 (몬스터 설정) [RPG게임만들기] RPG게임만들기 몬스터 설정 2. 적(몬스터) 정보 추가(등급,HP, MP, 물리공격력,마법공격력, 힘, 민첩, 행운, 마력, 방어력, 저항력, 스피드,크리티컬) 등급 = 1 물리 공격력 = (힘*1)/10.0 마법 공격력 = (마력*0.2)/8.0 힘 = (등급*5) 민첩 = (등급*5) 행운 = (등급*5) 마력 = (등급*2) 방어력 = (등급*3)+(힘/15) 저항력 = (등급*1)+(마력/20) 스피드 = 1*(민첩/5) 크리티컬 = 0*(행운/2) HTML 삽입 미리보기할 수 없는 소스 2024. 1. 1.
C언어] RPG게임만들기-1 (플레이어 설정) [RPG게임만들기] RPG게임만들기 플레이어 만들기. 1. 플레이어 정보 (HP, MP, 물리공격력,마법공격력, 힘, 민첩, 행운, 마력, 방어력, 저항력, 스피드,크리티컬) 물리 공격력 = (기본 1) + (힘*3)/10.0 마법 공격력 = (기본 0.5) + (마력*2)/8.0 힘 = (기본 10) 민첩 = (기본 10) 행운 = (기본 10) 마력 = (기본 5) 방어력 = (기본 5)+(힘/15) 저항력 = (기본 3)+(마력/20) 스피드 = (기본 1)*(민첩/5) 크리티컬 = (기본 0)*(행운/2) HTML 삽입 미리보기할 수 없는 소스 2024. 1. 1.
C언어] 스택 [스택] 1. 스택 이란? 스택은 후입선출(Last-In-First-Out, LIFO)의 자료구조로서, 데이터를 쌓아 올리는 방식으로 동작한다. 스택은 주로 함수 호출, 임시 데이터 저장 등 다양한 용도로 사용된다. C 언어에서는 스택을 구현하고 다루는 데 필요한 몇 가지 개념과 함수들이 있다. 스택의 구현: 스택은 배열이나 연결 리스트를 사용하여 구현될 수 있다. 배열 기반 스택은 일반적으로 크기가 정적으로 정해지지만, 연결 리스트 기반 스택은 동적으로 크기가 조절될 수 있다. 스택의 주요 연산 Push: 스택에 데이터를 추가합니다. Pop: 스택에서 데이터를 제거합니다. Top (또는 Peek): 스택의 맨 위에 있는 데이터를 조회합니다. isEmpty: 스택이 비어 있는지 확인합니다. HTML 삽입.. 2024. 1. 1.
728x90