기록은 기억을 이기고 시간보다 오래 남는다.
반응형

개발자 20

우선순위 큐와 힙: 개념, 특징 with JS(Java Script)

우선순위 큐와 힙은 데이터를 관리하고 탐색하기 위한 중요한 도구입니다.이 글에서는 우선순위 큐와 힙의 개념, 특징, 그리고 자바스크립트를 사용한 구현 방법을 알아보겠습니다.우선순위 큐우선순위 큐는 데이터가 입력된 순서가 아니라 우선순위에 따라 처리되는 자료구조입니다. 이는 FIFO(First-In-First-Out) 원칙을 따르는 일반적인 큐와 다릅니다.힙힙은 이진 트리 형태를 가지며 우선순위 큐를 구현하기 위한 자료구조입니다. 힙은 보통 최대 힙과 최소 힙으로 구분되며, 최대 힙은 루트가 가장 큰 값을 가지고 최소 힙은 루트가 가장 작은 값을 가집니다.힙의 특징우선순위가 높은 요소가 먼저 처리됩니다.완전 이진 트리의 형태를 가지며, 요소 추가 및 삭제 시 트리가 재조정됩니다.힙 요소 추가 알고리즘새로운..

해시 테이블의 이해: 구조, 충돌 해결 방법 with JS

해시 테이블은 효율적인 데이터 관리를 위한 필수 자료구조입니다.이는 데이터를 빠르게 삽입하고 검색할 수 있게 해주는 강력한 기능을 제공합니다. 본 글에서는 해시 테이블의 원리, 문제점 및 해결책, 그리고 실제 사용 사례에 대해 자세히 살펴보겠습니다. 해시 테이블의 기본 구조해시 테이블은 '키(key)'와 '값(value)'의 쌍을 저장합니다. 이때, 키는 해싱 함수를 통해 배열의 인덱스로 변환되어, 해당 인덱스에 값을 저장하게 됩니다. 이 구조 덕분에 데이터의 삽입, 삭제, 탐색 작업을 평균적으로 O(1)의 시간 복잡도로 수행할 수 있습니다.해싱 함수해싱 함수는 키를 배열의 유효한 인덱스로 변환하는 역할을 합니다. 이 함수는 고유하게 값을 분배하여 해시 테이블의 효율을 극대화하는 것이 중요합니다.해시 충..

쓰레드 [thread/THREAD]

쓰레드는 과거에는 표준화가 되어 있지 않았지만현제는 모던 c++에 포함이 되어 있어 #include 헤더를 선언해주면리눅스에서 따로 작업할 필요가 없이 사용가능 하다. thread 객체를 만드는 방법은 아래와 같다.std::tread t; 이 함수들은 C++11에서 제공되는 스레드 클래스의 멤버 함수들이다.hardware_concurrency()함수는 시스템에서 동시에 실행할 수 있는 최대 스레드 수를 반환get_id()스레드 객체의 고유 식별자를 반환detach()스레드 객체를 따로 분리시켜서 실행. 분리된 스레드는 부모 스레드와 독립적으로 실행joinable()함수는 스레드 객체가 join() 함수를 호출할 수 있는지 여부를 반환join()스레드가 종료될 때까지 기다린 후 스레드의 종료를 기다립니다.

[c/c++] 일, 월, 년을 원하는 만큼 더하는 프로그램

문제 1 여러분은 아래와 같은 Date 클래스를 디자인 하려고 합니다. SetDate 는 말그대로 Date 함수 내부를 초기화 하는 것이고 AddDay, AddMonth, AddYear 는 일, 월, 년을 원하는 만큼 더하게 됩니다. 한 가지 주의할 점은 만일 2012 년 2 월 28 일에 3 일을 더하면 2012 년 2 월 31 일이 되는 것이 아니라 2012 년 3 월 2 일이 되겠지요? 코드 #include using namespace std; class Date { private: int year_; int month_; // 1 부터 12 까지. int day_; // 1 부터 31 까지. public: void SetDate(int year, int month, int date) { year_..

게임 회사 채용 준비과정

안녕하세요 준 입니다. 오늘은 게임 회사의 채용 프로세스와 각 과정에서 어떠한 준비를 해야하는 기술하도록 하겠습니다. 우선 게임회사의 채용 과정은 크게 이렇게 볼 수 있습니다. 1. 서류 단계 2. 면접 단계 3. 처우 밑 연봉 협상 이러한 과정은 단순하게 게임회사 말고도 많은 개발 회사가 이와 비슷한 채용 프로세스를 가지고 있습니다. 우선 서류 단계 입니다. 20명 중 5명 6명 정도 통과한다고 보시면 됩니다.(25%) 이 단계에서는 스펙, 자소서, 포트폴리오를 봅니다. 스펙은 학력, 학점 대외 할동 등이 있습니다. 게임 업계에서는 학력과 학점을 보지 않을까요? 대외적으로는 보지 않는다 실력이 중요하다고 말하겠지만 신입을 뽑는 사람도 같은 사람이기에 좋은 학교, 유의미한 대외 할동이 있으면 눈길이 갈 ..

게임 서버 2023.02.22

게임 서버 개발자 채용 프로세스

게임 회사 채용 프로세스 서류 단계 a.스펙 b.자소서 c.포트폴리오 -눈에 확연하게 뛰면 좋음 -장황하게 쓸 필요가 없음 -위 하나하나를 세세하게 볼 수 없음 기술 면접 a. 과제/ 코딩 시험 등 b. 필기 시험 c. 기술 면접 3. 인사팀 면접 a. 인성 면접 b. 처우 혐의 c. 왠만 하면 떨어 지지 않음 프로그래머 일 처내야 할 메인 컨텐츠 버그 수정 긴급 수정 사항 기획자와 서로의 입장을 이해하는 것이 중요함 면접 (전문 면접관이 면접하는 경우가 잘 없음)

게임 서버 2023.02.14

게임 서버 공부 할 것

1). 프로그래밍 언어 중간 규모의 프로그램을 만들 수 있어야 C++과 C#이 대부분 C++를 추천 이유는 깊이 있는 공부가 가능하기 때문 2). 시스템프로그래밍 3).데이터 베이스 대학교에서 배운 것만 제대로 알고 있으면 됨 -기본 sql 문 사용법 -index에 대한 기본상식 4).네트웨크 프로그래밍 학습 -소켓프로그래밍 Iocp공부 -네트워크 이론 이론을 잘 알고 있어 5). 포트폴리

게임 서버 2023.02.05

[c/c+]참조자_레퍼런스(reference)

1). 레퍼런스는 반드시 누구를 참조하는지 명확하게 표시하여야한다. 2.) 레퍼런스는 상수값을 직접 받아오지 못한다. ex1). 이 경우에는 에러가 난다. 이유는 참조자는 상수값 즉 리터럴(literal) 받지 못한다. 따라서 추가하거나 더 변경할 부분은 빨간색으로 표시해 뒤었다. //case 1 //case 2 #include #include using namespace std; using namespace std; int main() int main() { { const int &ref=10; int ref1=10; cout

반응형