본문 바로가기

개발47

[C++] 덱 std::deque std::deque(Double Ended Queue)는 C++ 표준 라이브러리에서 제공하는 시퀀스 컨테이너 중 하나로, 양쪽 끝에서 삽입과 삭제를 효율적으로 수행할 수 있는 자료구조 입니다. std::deque는 스택과 큐의 기능을 모두 제공하며, std::vector과 유사하지만 몇가지 차이점이 있습니다.  주요 특징 :양쪽 끝에서 삽입과 삭제가 가능 : deque는 양쪽 끝에서 모두 삽입과 삭제 작업을 상수시간에 수행할 수 있습니다.임의 접근 가능 : deque는 vector처럼 임의 접근을 지원하므로, 인덱스를 사용하여 특정 위치의 요소에 접근할 수 있습니다.동적 크기 : deque는 내부적으로 동적 크기 조정을 수행하므로, 필요에 따라 크기가 자동으로 조정됩니다.메모리 할당 방식 deque는 여.. 2024. 8. 25.
[C++] 큐 std::queue 먼저들어간 원소가 가장 먼저 나오게되는 자료구조이다.선입선출. FIFO(First In, First Out) 구조를 가지고있다. 큐의 성질 : 원소의 추가 O(1).원소의 제거 O(1).제일 처음과 마지막 원소 확인이 O(1).FIFO 구조 : 먼저 추가된 요소가 가장 먼저 제거됩니다.제일 상단이 아닌 나머지 원소들의 확인/변경이 원칙적으로 불가능. 주요 멤버 함수 :push(value) : 큐의 맨 뒤에 요소를 추가합니다.pop() : 큐의 맨 앞 요소를 제거합니다. 이 함수는 요소를 반환하지 안흥며, 단수히 제거합니다.front() : 큐의 맨 앞 요소를 반환합니다.back() : 큐의 맨 뒤 요소를 반환합니다.empty() : 큐가 비어 있는지를 확인합니다. 비어있으면 true 그렇지 않으면 fal.. 2024. 8. 25.
[JS, C++] 전역 JS와 C++ 에서 전역(global) 개념은 비슷한 부분도 있지만, 언어의 특성에 따라 다르게 동작합니다. 아래는 두 언어에서 전역의 개념과 차이점을 설명합니다.JS 에서의 전역전역 객체 (Global Object) : JS 에서 전역범위(Global Scope)에 선언된 변수는 전역 객체의 속성이 됩니다. 이 전역 객체는 실행 환경에 따라 다릅니다.브라우저 환경에서는 window 객체가 전역 객체 입니다.Node.js 환경에서는 global 객체가 전역 객체 입니다.전역 변수 선언 방법 :var로 선언된 전역 변수는 전역 객체의 속성이 됩니다. (요즘에 와서는 var는 사용을 하지 않는 것이 좋다.)let 과 const 로 선언된 전역 변수는 전역 객체의 속성이 되지 않지만, 여전히 전역 범위에서 접.. 2024. 8. 20.
[JS] undefined 와 null 두 단어 모두 없음을 나타내는 값이지만 사용과 목적이 다르다. undefined개발자가 직접 지정할 수도 있지만 일반적으로는 JS에서 값이 있어야 할 것 같은데 없는 경우, 자동으로 부여합니다. 변수에 값이 지정되지 않은 경우, 데이터 영역의 메모리 주소를 지정하지 않은 식별자에 접근할 때.이나 []로 접근하려 할 때, 해당 데이터가 존재하지 않는 경우return 문이 없거나 호출되지 않는 함수의 실행 결과var a;console.log(a); // (1) 값을 대입하지 않은 변수에 접근var obj = { a: 1 };console.log(obj.a); // 1console.log(obj.b); // (2) 존재하지 않는 property에 접근// console.log(b); // 오류 발생var fu.. 2024. 8. 20.