
알고리즘 문제 풀면서 새로 알게된 내용 정리
벡터는 배열처럼 첫번째 요소가 포인터가 아님
배열은 이름 arr을 쓰면 자동으로 첫번째요소를 가리키는 포인터로 변하지만
벡터는 클래스(객체)이기에 그런식으로 동작하지 않음
void koong (int* vec) {...};
koong(&vec[0]);
koong(vec.data());
koong(arr);
벡터의 경우
키워드 찾는 문제
string의 find로 키워드를 바로 찾을 수 있음
if (ring.find(keyword) != string::npos) {...};
string::npos
str.find(찾을거)
str.substr(시작위치, 길이)
str += "추가할문자열"
str.replace(시작위치, 길이, "교체할문자열");
str.erase(시작위치, 길이)
to_string(숫자)
stoi(문자열)
reverse(str.begin(),str.end()) : 문자열 뒤집기, algorithm헤더 필요
int index = S[i] - 'a';
S[i]가 소문자일때 문자 - 문자를 통해서 둘의 아스키코드 차이만큼 int로 받을 수 있었다.
예전에 풀던 알고리즘 문제 풀면서 C++풀이방법 같은것들에 대해서 익숙해지려고 노력했다. 그래도 이중 배열, 문자열 다루기등등 여러가지 배우게된 것 같다.