분류 전체보기372 [C++] STL vector erase사용법 정리 erase사용 간단 정리 erase를 사용하던 중 가끔씩 반환값이 무엇인지 헷갈려 찾아 볼 때가 있었다. 그럴 때를 위해, 혹은 기억하기 위해 간단히 사용법을 남긴다. 반환값 = 다음 itrator erase함수로 특정 값을 삭제하면 반환값으로 다음 번지를 가르키는 itrator를 가진다. 또한 삭제된 값뒤의 값들이 앞으로 밀리게 된다. 즉, 현재 itrator는 아무것도 가르키지 않으므로, 새로 할당해 줄 필요가 있다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 #include #include using namespace std; int main(){ vector v1 = {1, 2, 3, 4, 5}; for(auto it = v1.begin(); it != v1.end.. 2022. 12. 3. [Node.js] 해시의 이해, 해시로 비밀번호 생성 해시의 이해 이번에는 해쉬 함수를 사용하여 비밀번호를 만드는 방법을 정리하고자 한다. 많은 웹은 로그인 기능을 제공한다. 그러나 우리는 만약 그렇게 한다면 우리의 데이터 베이스를 열어보는 것만으로 사용자의 아이디와 비밀번호가 노출되기 때문이다. 또한 많은 유저는 여러 사이트에서 같은 비밀번호를 사용하는 경향이 있기에 더욱 문제가 심각해진다. 이런 상황에서 어떻게 데이터베이스에 사용자의 비밀번호를 저장하고 로그인 기능을 구현할 수 있을까? 해답은 해시 함수(hash function)의 사용이다. 해시함수(혹은 해시 알고리즘)은 임의의 길이의 데이터(여기서는 비밀번호)를 고정된 길이의 데이터로 매핑하는 함수이다. 이렇게 비밀번호를 다른 데이터로 매핑시키므로서 해당 매핑된 데이터를 원래 비밀번호로 복구할 수 .. 2022. 11. 28. [자료구조] C++트리 설명 및 구현(이진트리)/이진트리 구현 트리란? 트리란 확장된 반순서의 구조를 가지는 자료구조이다. 구조적으로 그래프와 선형 자료구조들 (벡터와 같은 것들) 사이에 있다고 볼 수 있다. 즉 트리는 1:N 비선형 계층형 자료구조이다. 트리에서 사용되는 용어는 아래와 같다. - node : 트리를 구성하고 있는 기본 요소(위 그림의 1, 2, 3 ...) - edge(간선) : 노드를 연결하는 선 - root node(루트 노드) : 부모가 없는 노드, 트리 구조는 단 하나의 루트 노드만을 가진다.(위 그림의 1) - leaf node(단말 노드) : 자식이 없는 노드(위 그림의 8, 9, 10, 11, 13, 14) - internal node(내부 노드) : leaf node가 아닌 노드, 즉 자식 노드를 하나 이상 가지는 노드 - subtr.. 2022. 11. 28. [리눅스/유닉스] 깃 올리기(원격 깃 저장소에 올리기)/깃허브 깃허브/원격저장소 앞서 깃이 무엇인가를 정리하고 로컬 저장소를 생성하고 커밋하는 포스팅을 올린 바 있다. [리눅스/유닉스] 깃 이용하기(Git 설정) 이 포스팅에서는 원격으로 깃허브에 접근하여 내 로컬 저장소에서 생성된 파일을 깃허브에 업로드 하는 법을 정리한다. 즉, 이번에 하고자 할 것은 로컬 저장소를 생성한 후 파일을 커밋하고 해당 내용을 원격 저장소에 업로드 하는 것이다. 깃 저장소 생성 1. 로컬 저장소 생성 git init : 저장소를 만든다. 로컬 저장소로 사용하고자 하는 폴더에 접근해 git init명령어를 입력한다. 폴더에 .git파일이 생성됨을 확인 할 수 있다.(보이지 않을시, 폴더 숨김처리 해제시 보임) 2. 원격 저장소 생성 깃허브 사이트에 접속해 로그인을 한다. 좌측 상단 New.. 2022. 11. 14. 이전 1 ··· 28 29 30 31 32 33 34 ··· 93 다음