728x90
반응형

C++ 3

[C++] Tree의 정의 및 Binary Search Tree의 구현

정의트리는 list, queue 등과 달리 한 노드가 여러 노드를 가리킬 수 있는 비선형적 자료구조최상위 노드가 존재하는 계층적인 형태단방향 그래프시작 노드에서 출발해서 다시 돌아올 수 없는 사이클이 없는 연결 그래프 용어노드(Node): 트리를 구성하는 데이터 원소간선(Edge): 노드와 노드를 연결하는 선 (노드의 개수 n, 간선의 수 n-1)루트 노드(Root Node): 부모 노드가 없는 트리의 가장 최상단에 있는 노드. 트리에 1개 존재부모 노드(Parent Node): 연결된 두 노드 중 위에 있는 노드자식 노드(Child Node): 부모 노드의 하위 노드형제 노드(Sibling Node): 같은 부모를 갖는 노드조상 노드(Ancestor Node) / 자손 노드(Descedent Node)..

[LeetCode] C++ 125. Valid Palindrome

https://leetcode.com/problems/valid-palindrome/description/ 문제 풀이1. ASCII 문자에 해당하는 글자만 남긴 뒤, 소문자로 바꾸자2. Palindrome이 성립하는지 순서대로 비교해보고 비교 중 다른 문자가 있다면 false를 반환하고, 나머지는 true를 반환하자 풀이 1#include // std::remove_if#include #include // std::isalnum, std::tolowerclass Solution {private: bool is_not_alnum(char c) { return !isalnum(static_cast(c)); } string preprocess(string s){ s..

[C++] STL list

#include 헤더파일에 존재한다. double linked list vector, deque와 다르게 멤버 함수에서 정렬(sort, merge), 이어붙이기(splice)가 있다. 임의접근 반복자 at(), [] 등으로 접근 불가. Iterator를 통해 하나씩 접근해야 한다.(양뱡향 반복자 ++, -- 사용하여 탐색) 연산자( ==, != , , =) 사용가능 using namespace std; 선언했다고 가정 생성자 list 변수이름 비어있는 list 컨테이너 생성 ex) list li; ex) list li; list li(10); default값(0)으로 초기화된 원소 10개를 가지는 list 생성 list li(3, 2); 2로 초기화된 원소 3개를 가지는 list 생성 list li2(l..

728x90
반응형