Coder Island
close
프로필 배경
프로필 로고

Coder Island

  • 분류 전체보기 (105)
    • 로스트아크 (1)
    • C++ (48)
      • 자료형 (1)
      • 입출력 (1)
      • 연산자 (1)
      • 조건문 (1)
      • 반복문 (1)
      • 함수 (1)
      • 포인터 (1)
      • 템플릿과 제네릭 (1)
      • 객체지향 (4)
      • STL (30)
    • 게임개발 (14)
      • 언리얼엔진 (1)
      • 유니티 (12)
      • 게임이론 (1)
    • 백준 (26)
    • 프로젝트 (5)
      • 모바일프로그래밍 (1)
      • 웹프로그래밍 (2)
      • 임베디드 (1)
      • 데이터베이스 (1)
    • 일기장 (9)
      • 알바 (3)
      • 책 (1)
    [ 게임이론 ] AI 캐릭터 구현 Behavior Tree(행동트리)

    [ 게임이론 ] AI 캐릭터 구현 Behavior Tree(행동트리)

    행동 트리란?게임 AI에서 널리 사용되는 트리기반의 의사결정 구조, AI캐릭터가 순서,조건에 따라 어떤 행동을 할지 처리합니다. 기본 구조루트(root): 트리의 시작점컴포지트 노드(Composite): 자식 노드를 여러개 가짐Selector: 자식이 하나라도 성공하면 성공 (OR)Sequence: 자식이 모두 성공해야 성공(AND)데코레이터 노드(Decorator): 한 개의 자식을 감싸 조건을 붙임repeat, Inverter, UntilFail리프 노드(Leaf)Action: 실제 행동 수행(공격, 이동 등)condition: 조건 평가노드의 반환에는 Success, Run, Fail로Success: 조건에 해당하여 해당 노드의 코드 실행Run: 노드 실행중Fail: 조건에 실패하여 실패 반환 예시..

    • format_list_bulleted 게임개발/게임이론
    • · 2025. 5. 10.
    • textsms

    [STL] Map 컨테이너

    map 컨테이너연관 컨테이너로 원소를 key와 value의 쌍으로 저장한다.set은 원소를 key하나로 저장하지만 map은 원소를 key와 value 쌍으로 저장하며, map도 key의 중복 저장을 하지 못하지만 중복저장을 원한다면 multiset을 사용해야한다.map은 [ ] 연산자를 제공하여 key에 해당하는 원소의 value에 쉽게 접근하거나 변경할 수 있다. 균형 이진 트리: 모든 노드가 부모보다 왼쪽이 작고 오른쪽이 큰 형태. (반대라면 반대로) 연관 컨테이너는 균형 이진 트리를 사용하므로 찾기연산( find(), lower_bound(), upper_bound(), equal_range(), count())에 뛰어난 성능(로그 시간)을 보이며 insert 또한 로그 시간 복잡도를 보인다. 중복..

    • format_list_bulleted C++/STL
    • · 2025. 3. 22.
    • textsms

    [STL] Set 컨테이너

    set 컨테이너연관 컨테이너 중 단순한 컨테이너로 Key라 불리는 원소(value)의 집합으로 이뤄진 컨테이너. 중복 혀용X노드 기반의 컨테이너로 균형 이진 트리로 구현되어 있다.set은 원소를 삽입할때 유일한 멤버 함수 insert( )를 제공한다. 균형 이진 트리: 모든 노드가 부모보다 왼쪽이 작고 오른쪽이 큰 형태. (반대라면 반대로) 연관 컨테이너는 균형 이진 트리를 사용하므로 찾기연산( find(), lower_bound(), upper_bound(), equal_range(), count())에 뛰어난 성능(로그 시간)을 보이며 insert 또한 로그 시간 복잡도를 보인다. 중복을 허용하는 multiset 컨테이너템플릿 형식, 인터페이스, 멤버의 형식 모두 set과 같고, key가 중복으로 저..

    • format_list_bulleted C++/STL
    • · 2025. 3. 22.
    • textsms

    [STL] 6장 문제풀이

    1. 다음 중 vector 컨테이너의 특징을 고르세요.1. 시퀀스 컨테이너입니다.2. sort( ), splice( ) 멤버함수를 제공합니다. (vector 자체에서 sort splice는 제공하지 않음)3. 배열 기반 컨테이너 입니다.4. 컨테이너 앞, 뒤로 추가/제거가 가능합니다. (vector는 뒤로 추가 제거만 가능)5. 임의 접근 반복자를 제공합니다.6. reserve( ) 멤버 함수를 제공합니다.7. 빠른 시간(상수 시간)에 원소를 삽입, 삭제 할 수 있습니다. (삽입 삭제 시 필요한 만큼의 메모리 공간을 위해 빠른 시간 내에 할 수는 없음) 답: 1, 3, 5, 6 2. 다음 중 deque 컨테이너의 특징을 고르세요.1. 시퀀스 컨테이너 입니다.2. sort( ), splice( ) 멤버 함..

    • format_list_bulleted C++/STL
    • · 2025. 3. 17.
    • textsms

    [STL] list 컨테이너

    list컨테이너노드 기반의 컨테이너로, 원소가 노드 단위로 저장되며 이중 연결 리스트로 구현됨. list 의 주요 인터페이스템플릿 형식 template >class listT는 list컨테이너 원소의 형식 생성자생성자list ltlt는 빈 컨테이너list lt(n)0원소 n개로 초기화된 컨테이너list lt(n, x)x원소 n개로 초기화된 컨테이너list lt(lt2)lt는 lt2 컨테이너의 복사본 (복사 생성자 호출)list lt(b,2)lt는 반복자 구간 [b, e)로 초기화된 원소를 같는다. 멤버함수멤버함수lt.assign(n,x)lt에 x값으로 n개의 원소를 할당한다lt.assign(b,e)lt에 반복자 b부터 e까지 시퀀스 구간으로 할당한다.lt.back()lt에 마지막 원소를 참조한다.p=l..

    • format_list_bulleted C++/STL
    • · 2025. 3. 16.
    • textsms

    [STL] Deque 컨테이너

    Deque 컨테이너vector 컨테이너와 비슷하게 동작하지만 앞으로도 삽입과 삭제가 가능한 컨테이너 vector와 다른 push_backvector에서의 push_back은 기존 메모리에 필요한 메모리를 추가한 메모리공간에 원소들을 삽입했지만deque의 push는 원소가 여러 메모리 블록에 나뉘어 저장된다. Deque의 주요 인터페이스템플릿 형식 template >class dequeT는 deque 컨테이너 원소의 형식 생성자생성자deque dqdq는 빈 컨테이너deque dq(n)0원소 n개로 초기화된 컨테이너deque dq(n, x)x원소 n개로 초기화된 컨테이너deque dq(dq2)dq는 dq2 컨테이너의 복사본 (복사 생성자 호출)deque dq(b,2)dq는 반복자 구간 [b, e)로 초기화..

    • format_list_bulleted C++/STL
    • · 2025. 3. 15.
    • textsms

    [STL] Vector 컨테이너

    Vector 컨테이너대표적인 시퀀스 컨테이너이자 배열 기반 컨테이너  Vector의 주요 인터페이스템플릿 형식 template >class vectorT는 vector 컨테이너 원소의 형식 생성자생성자vector vv는 빈 컨테이너vector v(n)0원소 n개로 초기화된 컨테이너vector v(n, x)x원소 n개로 초기화된 컨테이너vector v(v2)v는 v2 컨테이너의 복사본 (복사 생성자 호출)vector v(b,2)v는 반복자 구간 [b, e)로 초기화된 원소를 같는다. 멤버함수멤버함수v.assign(n,x)v에 x값으로 n개의 원소를 할당한다v.assign(b,e)v에 반복자 b부터 e까지 시퀀스 구간으로 할당한다.v.at(i)v에 i번째 원소를 참조한다.v.back()v에 마지막으로 삽입..

    • format_list_bulleted C++/STL
    • · 2025. 3. 10.
    • textsms

    [STL] 5장 문제풀이

    1. 다음 빈 칸을 채우세요.1. STL 구성 요소에서 객체들을 저장하는 객체를 (  컨테이너 ) 라 합니다.2. 컨테이너의 원소를 순회하고 참조하는 객체를 (  반복자 ) 라 합니다.3. 여러가지 문제 해결을 위한 반복자와 동작하는 함수 템플릿을 (  알고리즘 ) 라 합니다. 2. 다음 빈 칸을 채우세요.1. 컨테이너 원소가 자신만의 삽입 위치를 갖는 것을 (  시퀀스  ) 컨테이너라 합니다.2. 컨테이너 원소가 특정 정렬 기준에 의해 자동 정렬된 것을 (  연관 ) 컨테이너라 합니다. 3. 다음 빈 칸을 채우세요1. 배열 기반 컨테이너인 vector와 deque는 (  임의 접근 ) 반복자를 제공하며, 그 외 모든 STL컨테이너는 ( 양방향 ) 반복자를 제공합니다.2. (시퀀스(순차열))은 원소의 순..

    • format_list_bulleted C++/STL
    • · 2025. 3. 8.
    • textsms
    [STL] 할당기

    [STL] 할당기

    할당기컨테이너의 메모리 할당 정보와 정책(메모리 할당 모델)을 캡슐화한 STL의 구성 요소할당기는 템플릿 클래스이며 모든 컨테이너는 기본 할당기를 사용합니다.C++의 동적 메모리 할당 연산자 new와 delete를 사용자가 오버로딩해서 사용할 수 있듯이 STL의 할당기도 사용자가 직접 할당기를 정의하고 사용할 수 있습니다. 사용자 정의 할당기: 사용자가 직접 메모리 할당 방식을 제어할 수 있게 합니다. 다중 스레드에 최적화되고 안전한 사용자 메모리 할당 모델이 필요하거나 사용자가 컨테이너에 맞는 메모리 할당 모델을 설계하거나 특정 구현 환경에서 최적화된 메모리 할당 모델을 구축할 때 사용합니다. 컨테이너 기본 할당기 allocator#include #include #include using namespa..

    • format_list_bulleted C++/STL
    • · 2025. 3. 3.
    • textsms
    • navigate_before
    • 1
    • 2
    • 3
    • 4
    • ···
    • 12
    • navigate_next
    공지사항
    전체 카테고리
    • 분류 전체보기 (105)
      • 로스트아크 (1)
      • C++ (48)
        • 자료형 (1)
        • 입출력 (1)
        • 연산자 (1)
        • 조건문 (1)
        • 반복문 (1)
        • 함수 (1)
        • 포인터 (1)
        • 템플릿과 제네릭 (1)
        • 객체지향 (4)
        • STL (30)
      • 게임개발 (14)
        • 언리얼엔진 (1)
        • 유니티 (12)
        • 게임이론 (1)
      • 백준 (26)
      • 프로젝트 (5)
        • 모바일프로그래밍 (1)
        • 웹프로그래밍 (2)
        • 임베디드 (1)
        • 데이터베이스 (1)
      • 일기장 (9)
        • 알바 (3)
        • 책 (1)
    최근 글
    인기 글
    최근 댓글
    태그
    • #게임개발
    • #프로젝트
    • #유니티
    • #문제풀이
    • #c++
    • #unity
    • #백준
    • #함수포인터
    • #독학
    • #stl
    전체 방문자
    오늘
    어제
    전체
    Copyright © 쭈미로운 생활 All rights reserved.
    Designed by JJuum

    티스토리툴바